我們正在制作一些庫,基本上是為我們的API編寫的,這將使我們的外部開發人員的工作更加輕松。因此,我們創建了新的庫項目,并將Retrofit和其他一些庫作為依賴項。dependencies { compile 'com.android.support:appcompat-v7:23.3.0' compile 'com.google.code.gson:gson:2.6.2' compile 'com.squareup.retrofit2:retrofit:2.0.1' compile 'com.squareup.retrofit2:converter-gson:2.0.1' compile 'com.squareup.okhttp3:okhttp:3.2.0'}現在,當我們構建它時,它將生成aar文件。但現在當我們把aar文件libs目錄,并將其設置為依賴,我們還是必須把相同的依賴于用戶的build.gradle文件,它很爛。應該從圖書館取走吧?repositories { flatDir { dirs 'libs' }}dependencies { compile(name: 'ourlibrary', ext: 'aar') { transitive = true; }}如何transitive = true上班?
1 回答
臨摹微笑
TA貢獻1982條經驗 獲得超2個贊
的AAR文件不包含嵌套(或傳遞)的依賴關系,并且不具有其描述庫所使用的依賴關系的POM文件。
這意味著,如果要使用存儲庫導入aar文件,則flatDir還必須在項目中指定依賴項。
就您而言transitive=true,由于上述原因,添加無法解決您的問題。
您應該使用Maven存儲庫(您必須在私有或公共Maven存儲庫中發布庫),不會遇到相同的問題。
在這種情況下,gradle使用pom文件下載依賴項,該文件將包含依賴項列表。
- 1 回答
- 0 關注
- 777 瀏覽
添加回答
舉報
0/150
提交
取消
