2

jTwitter を使用して、コンシューマ キー/シークレットとアクセス トークン/シークレットを使用して Twitter に oauth インスタンスを取得しようとしています。これは、ここの javadoc で十分に文書化されています。signpost、signpost-jetty、および jtwitter ライブラリーをダウンロードしましたが、サーブレットをデプロイして実行した後、java.lang.NoClassDefFoundError: winterwell/jtwitter/OAuthSignpostClient Eclipse がクラスが存在しないことについて不平を言っているというエラーが表示されます。私のプロジェクトにあるJARファイル自体。だから、私はそれを忘れると言いました、代わりにOAuthScribeClientjava.lang.NoClassDefFoundError: org/scribe/oauth/Tokenを試してみますが、これは非常によく似たエラーを生成しました.Java ファイルに次のコードがあり、エラーや警告なしでコンパイルされるため、これはさらに混乱します:

import org.scribe.oauth.Token;
Token token = new Token("myaccesstokeninfo", "accesstokensecret");

明らかに、私は非常に基本的な何かを見逃していますが、それが何であるかについては絶対に途方に暮れています. ありがとう。

4

3 に答える 3

2

通常、すべてのjarファイルを「/war/WEB-INF/lib」ディレクトリにコピーするのを忘れると「NoClassDefFoundError」が発生するため、これらのライブラリはサーバー側から使用できなくなります。

于 2010-09-12T16:00:32.280 に答える
1

Xo4yHaMope はおそらく正しいでしょう。

Eclipse から作業しているが Web コンテナーを使用して実行している場合、実行時のクラスパスがプロジェクトのクラスパスと異なる可能性があり、このエラーが発生する可能性があります。

于 2010-09-18T16:50:00.027 に答える
0

Ben Winters の回答を完成させるために、私が実際に行って作業したことは、プロジェクト内の libs フォルダーに jar を追加することです

フォルダ階層については、こちらも参照してください。

この eclipse を実行すると、通常、アプリケーションを起動する前に jar が Android の依存関係に追加されます。私が理解しているのは、ビルドパスにjarを追加すると、ビルド中にのみクラスが利用可能になるということです

于 2012-05-21T18:24:54.440 に答える