1

私たちが作成した Android ライブラリ (.jar ファイルですが、ライブラリ フラグが設定された Android プロジェクトではありません) の継続的な統合テストをオンラインで取得しようとしています。IntelliJ でテスト android プロジェクトを作成し、android エミュレーターで IntelliJ を介してテストを正常に実行することができました。

Maven サポートを追加し、POM ファイルを正しく取得し、android-maven-plugin v3.5.3 を使用してテスト ソリューションを Android エミュレーターにビルドおよびデプロイするように Maven を取得した後、次のランタイム エラーが発生します (さらに多くのエラーが発生します)。 :

04-18 04:41:10.800: WARN/dalvikvm(1532): VFY: unable to resolve static method 35: Lcom/joobworld/joobmobile/network/HttpResult$HttpVerb;.valueOf (Ljava/lang/String;)Lcom/joobworld/joobmobile/network/HttpResult$HttpVerb;

pom は、次の方法で「不足している」ライブラリを参照します。

<dependency>
    <groupId>com.joobworld.joobmobile</groupId>
    <artifactId>JoobMobile</artifactId>
    <version>3.1.0.0</version>
    <type>jar</type>
    <scope>provided</scope>
</dependency>

前述のように、maven は、テスト ソリューションをビルドまたはデプロイするときに何の不満もありません。jar ライブラリがローカル リポジトリから .m2 フォルダーに正しく読み込まれるため、何らかの理由で apk に jar ファイルが含まれていないように見えます。私はmavenにかなり慣れていないので、設定で明らかなことを見落としている可能性があります。この実行時の依存関係の問題を解決するための助けをいただければ幸いです。

4

2 に答える 2

0

スコープを「provided」に設定すると、maven に jar を apk に含めないように指示されます。コンパイルを使用するか、デフォルトでコンパイルするスコープ タグを削除してみてください。

于 2013-11-23T08:09:02.403 に答える
0

私はmavenを使用していませんが、手動の解決策があります。

.jar を /libs フォルダーにコピーすると、自動的に .apk に含まれます。注意してください: ビルドシステムがそれらを自動的に削除するかもしれません!

于 2013-10-22T11:09:46.210 に答える