Deklarasikan file jar lokal sebagai ketergantungan transitif proyek perpustakaan

Saya memiliki aplikasi Android (App1) yang bergantung pada proyek perpustakaan (Lib1). Proyek perpustakaan memiliki beberapa dependensi jarak jauh (misalnya jambu biji, pustaka dukungan android, dll) dan dua dependensi lokal, yaitu file JAR yang disimpan di folder Lib1/libs/.

Seperti inilah tampilan bagian dependensi build.gradle Lib1:

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

  compile 'com.android.support:support-v4:20.0.+'
  compile 'com.google.guava:guava:r08'
}

Jika saya mengkompilasi hanya perpustakaan (yaitu menjalankan gradle assemble pada folder Lib1/) maka itu akan dikompilasi dengan benar tetapi ketika saya menambahkan perpustakaan sebagai ketergantungan App1 maka gradle mengeluh bahwa ia tidak dapat menemukan dua toples di folder libs/ Lib1.

Ini adalah build.gradle dari App1:

dependencies {
  compile project(':Lib1')

  compile 'org.apache.james:apache-mime4j-core:0.7.2'
  compile 'org.apache.jackrabbit:jackrabbit-webdav:2.3.6'
  ...
}

Apakah ada cara untuk memberi tahu gradle bahwa jika perpustakaan bergantung pada file jar lokal maka proyek yang bergantung pada perpustakaan itu juga harus menyertakannya sebagai dependensi? Ketergantungan jarak jauh berfungsi dengan baik tetapi tidak ketika Anda memiliki file jar di libs/.


person Mike Laren    schedule 14.10.2014    source sumber