2016-05-30 66 views
2

私はaar形式で配布されているアンドロイドライブラリを持っています。それは体重300キロバイトです。 私は別のライブラリを作成したい、そして最初のライブラリが依存関係にあるaarフォーマットでも作成したい。 しかし、結果ライブラリの重量は30kbなので、明らかに最初のライブラリは含まれていません。aarをaarに含める

私はflatDirを使用して最初のライブラリを追加しようとしました:

repositories { 
    mavenLocal() 
} 
dependencies { 
    compile 'com.mylib:mylib:[email protected]' 
} 

が、まだそれはAARをもたらすために含まれていません。

repositories { 
    flatDir { 
     dirs 'libs' 
    } 
} 
dependencies { 
    compile(name:'mylib-1.0', ext:'aar') 
} 

そしてmaven-publishを使用してmavenLocalに公開。

最初のaarを結果aarに含めるにはどうすればいいですか?

答えて

3

これを達成する最良の方法は、maven repoでaarを配布することです。

AARファイルは推移依存関係が含まれていないと、ライブラリで使用される依存関係を記述したPOMファイルを持っていません。
リポジトリを使用してaarファイルをインポートする場合は、プロジェクトにも依存関係を指定する必要があります。

mavenレポジトリを使用すると、同じ問題は発生しません。
この場合、gradleは依存関係リストを含むpomファイルを使用して依存関係をダウンロードします。

+0

申し訳ありませんが、そこに私の質問への回答はありません。私はその依存関係が結果aarに詰め込まれることを望みます。これを行う方法? 'maven repository'について私もそれを取得しませんでした。私は何をすべきか?私はすでにローカルMavenリポジトリを使用して、同じ問題があります。 – anber

+0

@anber私が知っているように、別のものの中にaarを含める自動方法はありません。ローカルMavenを使用している場合、pom file.Insideをチェックして、他のlib(aar)との依存関係を持つ必要があります。 –

+0

私はそれをありがとう – anber

関連する問題