331

Android プロジェクトを作成し、プロジェクトに外部 JAR (hessian-4.0.1.jar) を追加しました。次に、JAR をビルド パスに追加し、[注文とエクスポート] で確認しました。

注文とエクスポートは無視されているようで、実行時に外部 JAR のすべてのクラスが欠落しています。

Eclipse プラグインを使用して Android アプリケーションを構築するときに、外部 JAR から必要なクラスを適切に含めるためのトリックはありますか? ant や Maven は使いたくありません。

4

12 に答える 12

445

エクリプスの場合

外部 JAR を Android プロジェクトまたは任意の Java プロジェクトに追加する良い方法は次のとおりです。

  1. libsプロジェクトのルート フォルダーにフォルダーを作成します。
  2. JAR ファイルをフォルダーにコピーします。libs
  3. Jar ファイルを右クリックし、 Build Path > Add to Build Path を選択します。これにより、プロジェクト内に「Referenced Libraries」というフォルダーが作成されます。

    これにより、プロジェクトを別のコンピューターに転送するたびに、ハード ドライブで参照されているライブラリが失われることはありません。

アンドロイド スタジオの場合

  1. プロジェクト エクスプローラーでAndroidビューを使用している場合は、以下のようにプロジェクトビューに変更します。

画像がありません

  1. 外部ライブラリを追加する目的のモジュールを右クリックし、[新規] > [Directroy]を選択して「 libs」という名前を付けます。
  2. blah_blah.jarを「libs」フォルダーにコピーします。
  3. blah_blah.jar を右クリックし、[ライブラリとして追加] を選択します。これにより、 build.gradleコンパイル ファイル ('libs/blah_blah.jar')として自動的に追加およびエントリが追加され、 gradleが同期されます。そして、あなたは終わった

注意 :サード パーティのライブラリを使用している場合は、Gradle スクリプトの実行時に、Gradle スクリプトが JAR と依存関係 JAR を自動的にダウンロードする推移的な依存関係を使用することをお勧めします。

例:「com.google.android.gms:play-services-ads:9.4.0」をコンパイルします

Gradle 依存関係管理の詳細を読む

于 2011-07-28T12:32:24.900 に答える
127

はい、ご利用いただけます。方法は次のとおりです。

  1. あなたのプロジェクト -> 右クリック -> インポート -> ファイル システム -> yourjar.jar
  2. あなたのプロジェクト -> 右クリック -> プロパティ -> Java ビルド パス -> ライブラリ -> Jar の追加 -> yourjar.jar

このビデオは、問題が発生した場合に役立つ可能性があります。

于 2009-08-26T22:39:28.737 に答える
5

現在、SDK 20.0.3 を使用していますが、以前のソリューションはどれもうまくいきませんでした。

hess が失敗した場所で hessdroid が機能する理由は、2 つの jar ファイルに異なる仮想マシン用にコンパイルされた Java が含まれているためです。Java コンパイラによって作成されたバイト コードは、Dalvik 仮想マシンでの実行が保証されていません。Android コンパイラによって作成されたバイト コードは、Java 仮想マシンでの動作が保証されていません。

私の場合、ソースコードにアクセスでき、ここで説明した方法を使用して Android jar ファイルを作成できました: https://stackoverflow.com/a/13144382/545064

于 2012-10-30T17:30:34.727 に答える
4

スタック トレースを十分に調べていないことがわかりました。問題は、外部 JAR が含まれていないことではありません。

問題は、Android プラットフォームに javax.naming.* や、外部 JAR にも依存関係がある他の多くのパッケージがないことです。

外部 JAR ファイルの追加、および Eclipse での順序とエクスポートの設定は、Android プロジェクトで期待どおりに機能します。

于 2009-08-27T14:15:35.497 に答える
3

現在のプロジェクトに移動

右クリック -> プロパティ -> Java ビルド パス -> Jar ファイルをライブラリに追加 -> [OK] をクリック

次に、現在のプロジェクトの参照ライブラリ ファイルに追加されます。

于 2012-07-03T05:10:17.420 に答える
1

Android の Java API は、javax.naming.* やその他の多くの javax.* をサポートしていません。依存関係を個別の jar として含める必要があります。

于 2010-11-24T03:54:54.090 に答える
1

gradleビルド システムを使用している場合は、次の手順に従います。

  1. Android アプリのjarそれぞれのフォルダー内にファイルを配置します。libs通常はProject> app>にありlibsます。libsフォルダがない場合は作成します。

  2. build.gradleこれをあなたのファイルに追加してくださいapp。(あなたProjectのものではありませんbuild.gradle

    dependencies {
        compile fileTree(dir: 'libs', include: '*.jar')
        // other dependencies
    }
    

    これにはjar、フォルダーで使用可能なすべてのファイルが含まれlibsます。

すべてのファイルを含めたくない場合はjar、個別に追加できます。

compile fileTree(dir: 'libs', include: 'file.jar')

于 2016-03-30T20:20:18.873 に答える
1

gradleを使用している場合はandroid studioで

これをbuild.gradleに追加します

compile fileTree(dir: 'libs', include: ['*.jar'])

jarファイルをlibsフォルダーに追加します

于 2015-08-29T21:51:03.037 に答える
1

Android Studio を使用している場合は、次の手順を実行します (@Vinayak Bs の回答をコピーして変更しました)。

  1. プロジェクト サイドビューでプロジェクト ビューを選択します (パッケージまたは Android ではなく)。
  2. プロジェクトのルート フォルダーにlibsというフォルダーを作成します。
  3. JAR ファイルを libs フォルダーにコピーします。
  4. サイドビューが更新され、JAR ファイルがプロジェクトに表示されます
  5. インポートする各 JAR ファイルを右クリックし、[ライブラリとして追加...] を選択すると、プロジェクトに含まれます。
  6. その後、コードで新しいクラスを参照するだけです。import javax.mail.*
于 2015-02-06T20:52:21.483 に答える
0

プロジェクト内にフォルダー(libなど)を作成し、jarをそのフォルダーにコピーします。次に、プロジェクトを右クリックしてビルドパスを構成し、ビルドパスで選択します。

'add jar' 作成したフォルダーを参照し、 jarを選択します。

于 2013-01-24T12:26:20.640 に答える
0

.jar ファイルを Android プロジェクトのフォルダーにコピーできるとは限りません。
特に、ワ​​ークスペース内の別のプロジェクトの出力であり、更新され続ける場合.

これを解決するには、jar をインポートする (ローカルにコピーする) のではなく、リンクされたファイルとしてプロジェクトに追加する必要があります。

UI で次を選択します。

Project -> Import -> File System -> yourjar.jar -> (Options area) Advanced -> Create link in workspace.

リンクは.projectファイルに保存されます。

<linkedResources>
    <link>
        <name>yourjar.jar</name>
        <type>1</type>
        <locationURI>PARENT-5-PROJECT_LOC/bin/android_ndk10d_armeabi-v7a/yourjar.jar</locationURI>
    </link>
</linkedResources>

PARENT-5-PROJECT_LOCプロジェクト ファイルに対して、5 ディレクトリ上 (../../../../../) の相対を意味します。

それをライブラリに追加します:
Project -> Properties -> Java Build Path -> Libraries -> Add Jar -> yourjar.jar

同じウィンドウで [注文とエクスポート] タブを選択し、jar をマークして、apk に追加されるようにします。

于 2015-10-31T07:44:56.143 に答える