Yani, şu anda bir Kütüphane projem var, projenin OkHttp
gibi bir kütüphaneye bağlı olduğu Foo
.Bir AAR geçiş bağımlılıkları içerebilir mi?
Şimdi, Foo
, bir AAR oluşturan ve bunu herkese açık bir yere iten bir maven buildstep'e sahiptir.
Şimdi, B projem olduğunu söyleyelim, ona Bar
diyoruz. Bar bir Android uygulamasıdır ve Bar
, Foo
'a bağlıdır.
Eh, bende var.
java.lang.NoClassDefFoundError: com.squareup.okhttp.OkUrlFactory
at com.foo.sdk.utils.OkHttpStack.<init>(OkHttpStack.java:15)
Yani, böyle bir şey mümkündür: Ben OkHttp
çağırır Bar
dan Foo
bir public static
işlevine bir çağrı yapmak Ancak, bu mesaj çıktı? Veya Bar
OkHttp
ve diğer bağımlılıkların yanı sıra Foo
sahip olduğu diğer bağımlılıklara manuel olarak bağlı mı?
Bu yaklaşımı çok başarılı bir şekilde takip ediyorum. Buna göre, daha önce açıklanan yönteme göre ayarlarım aşağıdaki gibi olmalıdır: 'derleme ('com.my:library:[email protected]') { transitive = true } Ancak son kütüphaneyi projem, geçişli lib eksik. Nasıl devam edeceğime dair bir fikrim yok, herhangi bir fikrin var mı? –
@MichaelKnight aar'ı flatDir kullanarak yerel dosya olarak eklerseniz, aar'ın geçiş bağımlılıkları içermediği anlamına gelir, bunları manuel olarak eklemelisiniz. Ancak, örneğin, maven repo dan aar getiriyorsanız, kütüphane hangi portların kullandığını açıklar (pom dosyasında) ve gradle bunları sizin için otomatik olarak alabilir. – NazarK
@MichaelKnight benim için çalışmıyor –