2

実行時にライブラリを使用しようとすると、次のエラーが発生します: java.lang.NoClassDefFoundError: com.google.api.client.extensions.android2.AndroidHttp このライブラリをプロジェクトに追加しました。これが最初の jar です。 Maven の依存関係 (私は Maven に 100% 慣れているわけではありません)。

また、私の理解では、Ant は libs フォルダーで jar を探していますが、Maven は独自のフォルダーを使用しており、他のプロジェクトでは問題なく動作します。だから私は迷っています..これをトラブルシューティングする方法についての手がかり/助けをいただければ幸いです!

ここに画像の説明を入力

ここに画像の説明を入力

ここに画像の説明を入力

4

4 に答える 4

3

jarファイルを正しく追加していないようです。また、ステップ6を逃したようです。

このjarをAndroidプロジェクトに含める場合は、Eclipse環境で次の手順を実行するだけです。

  1. プロジェクトのパネルでプロジェクトを右クリックします。
  2. 「プロパティ」オプションを選択します。
  3. [プロパティ]ウィンドウで、[Javaビルドパス]をクリックします。
  4. そのウィンドウの右側で、「ライブラリ」タブを選択します。
  5. 「外部JARの追加」ボタンをクリックして、以前に保存した場所にこのライブラリを追加します。
  6. 次に、[注文とエクスポート]タブをクリックし、[JarName.jar]を確認します</ li>
  7. 「OK」をクリックします。
于 2012-05-19T16:42:42.790 に答える
2

迅速な修正として、ウィンドウにチェックMaven Dependenciesを入れることでJava Build Path - Order and ExportNoClassDefFoundError を解決する必要があります。

添付したスクリーンショットによると、Google が開発ガイドで提案している標準的な方法で Eclipse で Android プロジェクトをセットアップ (またはインポート) しているように見えますが、何らかの形で Maven を使用して jar 依存関係の一部を管理しています。これはお勧めできません。完全に Google の標準的な方法 (r17 以降の libs/ フォルダー) を使用するか、依存関係管理のために Android プロジェクトを完全に mavenize する必要があります。

于 2012-05-19T23:00:00.780 に答える
0

ライブラリがエクスポートされていないようです。

プロジェクトフォルダの下で.classpathファイルを開き、次の行を再確認します。

<classpathentry exported="true" kind="lib" path="google-http-client-android2-1.8.3-beta.jar"/>

の場合exported="false"は、に変更しexported="true"ます。

于 2012-05-19T16:46:40.327 に答える
0

プロジェクト フォルダーの下にという名前の新しいフォルダーを作成し、libsこのライブラリをそのフォルダーに追加します。

私はkSOAPライブラリで同じ問題を抱えていましたが、これで問題が解決しました...

編集

既にそのフォルダーがあることがわかりました。ライブラリを追加...

于 2012-05-19T16:52:29.330 に答える