Android Studio 使用Gradle生成jar與aar

jar與aar差異

jar僅能含java class不能含有資源

aar除了java class外,還可以包括資源在內

一個library如果要編譯成aar,不能implementation aar,否則會編譯失敗,但可以含有jar

生成jar

  • 打開專案Gradle
  • 在Gradle內將
//id 'com.android.application'註解
id 'com.android.library'改為這個
//applicationId 'com.xxx.xxx'這個也註解
  • 在Gradle最下方新增下方程式碼
task deleteJar(type: Delete) {
    delete 'libs/commonTest.jar'
}


task createJar(type: Copy) {
    from('build/intermediates/compile_library_classes_jar/release/')
    into('libs/')
    include('classes.jar')
    rename('classes.jar', 'commonTest.jar')
}

createJar.dependsOn(deleteJar, build)
之後點選Sync Now
  • 再來打開右方Gradle,點選createJar
雙擊兩下執行

備註:這裡需要使用Tasks,如果找不到Tasks
參考這個文章Android Studio 右側Gradle Tasks選項消失?

  • 執行完後會在app/libs下方生成
這樣就成功編譯出Jar囉

備註:刪除jar一樣,找到deleteJar雙擊兩下執行,就可以囉

生成aar

  • 打開專案Gradle
  • 在Gradle內將
//id 'com.android.application'註解
id 'com.android.library'改為這個
//applicationId 'com.xxx.xxx'這個也註解
點選兩個其中一個
會在此生成aar


訂閱Codeilin的旅程,若有最新消息會通知。

廣告

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s

WordPress.com.

向上 ↑

%d 位部落客按了讚: