私はAndroidアプリケーション(Androidスタジオで動作しています)を持っています。これは2つのモジュールで構成されています: - 低レベルの純粋なJavaモジュールがあります(モジュールAと呼ぶ)。 - その上に、AndroidアプリケーションであるモジュールBがあります。いくつかの処理ではmoduleAに依存しています。Androidスタジオ:マルチモジュールプロジェクトにおける外部JARのリンク
これは問題なく動作しています。
モジュールAは外部ライブラリを呼び出す必要があります。私はJARファイルをダウンロードしてmoduleA/libsフォルダに入れました。 このlibsフォルダはmoduleAのgradle依存関係で参照されるため、コンパイルはOKです。しかし、実行時に例外があります:にjava.lang.ClassNotFoundException:によって引き起こさ
致命的な例外は、パス上のクラス「XXXX」を見つけることができませんでした:DexPathList
私はAPKが含まれていないことを見てきましたこの例外が発生するのは正常なのでJARファイルです。
同じJARファイルをmoduleB/libsにコピーすると問題なく動作しますが、プロジェクトではJARファイルが2回あります。これを処理するクリーンなソリューションは何ですか? 私はそれがgradleで解決できると思いますが、私はどのようにわかりません。
は、私はこの問題を解決することができた 非常オリヴィエ
jarライブラリをaarに変換することは回避策です:https://discuss.gradle.org/t/including-a-java-project-into-an-android-library-project-does-not-include-transitive-file依存関係/ 2442/8 –