3 回答

TA貢獻1757條經驗 獲得超8個贊
打開庫項目的build.gradle
在build.gradle中編寫兩個任務 - deleteJar和createJar并添加規則createJar.dependsOn(deleteJar,build)
上面的代碼:
task deleteJar(type: Delete) { delete 'libs/jars/logmanagementlib.jar'} task createJar(type: Copy) { from('build/intermediates/bundles/release/') into('libs/jars/') include('classes.jar') rename('classes.jar', 'logmanagementlib.jar')}createJar.dependsOn(deleteJar, build)
從右側展開gradle面板并打開您圖書館下的所有任務 - >其他。您將在那里看到兩個新任務 - createJar和deleteJar
雙擊createJar
任務成功運行后,從createJar任務中提到的路徑獲取生成的jar,即libs / xxxx.jar
將新生成的jar復制到所需項目的lib文件夾中 - >右鍵單擊 - >選擇“add as library”

TA貢獻1842條經驗 獲得超22個贊
如果您在Gradle中將代碼設置為普通Java模塊,那么讓Gradle為您提供包含內容的jar文件非常容易。該jar文件只包含您的代碼,而不是它依賴的其他Apache庫。我建議這樣分發; 將依賴項捆綁到庫中是有點奇怪的,這些庫的用戶必須自己包含這些依賴項更為正常(因為否則這些項目的沖突已經鏈接了庫的副本,可能是不同的版本)。更重要的是,如果您要發布圖書館,可以避免重新分發其他人的代碼時出現潛在的許可問題。
將需要編譯的代碼轉換為jar,并將其移至Android Studio中的單獨普通Java模塊:
文件菜單> 新模塊... > Java庫
在向導中設置庫,Java包名稱和類名。(如果你不想讓它為你創建一個類,你可以在創建模塊后刪除它)
在Android代碼中,設置新模塊的依賴關系,以便它可以使用新庫中的代碼:
文件 > 項目結構 > 模塊 > (您的Android模塊) > 依賴項 > + > 模塊依賴項。請參見下面的截圖:
從出現的對話框的列表中選擇您的模塊:
希望您的項目現在應該正常建設。完成構建后,Java庫的jar文件將放在模塊目錄的build / libs目錄中。如果要手動構建jar文件,可以從Gradle窗口運行其jar構建文件任務:

TA貢獻1829條經驗 獲得超6個贊
只需將其添加到java模塊的build.gradle即可。它將包括歸檔中的依賴庫。
mainClassName = "com.company.application.Main"jar { manifest { attributes "Main-Class": "$mainClassName" } from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } }}
這將導致[module_name] / build / libs / [module_name] .jar文件。
添加回答
舉報