Android Studio 打包jar和aar到引用一篇搞定

前幾天因?yàn)楣ぷ餍枰枰獙ndroid項(xiàng)目打包成jar以供其他工程調(diào)用,但是按照網(wǎng)上給的教程打包的時(shí)候卻遇到一個(gè)問題:想找到打包之后的jar文件,但是build之后在項(xiàng)目文件夾/build/intermediates/下找不到bundles文件夾,下面是網(wǎng)上給出的jar文件路徑
bundles文件夾找不到

原因是bundles文件夾改為了packaged-classes文件夾

build/intermediates/packaged-classes/release/

在packaged-classes文件文件夾下就可以找到我們需要的.jar文件了

附上打包指令

    //在Terminal中鍵入 gradlew makeJar 回車看到如下所示就OK了
    // jar在app libs中
    task makeJar(type: Copy) {
        delete 'build/libs/mysdk.jar'
        from('build/intermediates/packaged-classes/release/')
        into('build/libs/')
        include('classes.jar')
        rename('classes.jar', 'mysdk.jar')
    }

    makeJar.dependsOn(build)

位置 build/libs/

關(guān)于aar包
理解為Android項(xiàng)目獨(dú)有的jar包(包含class文件和資源文件)使用和jar文件,在我們打包的同時(shí)其實(shí)已經(jīng)生成了位置如圖
位置 /build/output/aar/

如何使用呢,來點(diǎn)簡(jiǎn)單粗暴有用的

直接復(fù)制aar或jar,到我們需要的module的libs下面,如下圖
直接復(fù)制aar和jar到module的libs
值得注意的是第一步將aar文件放入引用Module的libs目錄下后,和一般的jar文件引用類似,需要在moudle的build.gradle配置文件中把 libs 目錄加入依賴

在 gradle 的依賴配置中加入 compile(name: 'xxx', ext: 'aar') 這一句,依賴即可關(guān)聯(lián)完畢,

dependencies {
    compile(name:'myaartest',ext:'aar')
}
//這句很重要 不加資源無法加載
repositories{
    flatDir{
        dirs 'libs'
    }
}

會(huì)在Module的build/intermediates/exploded-aar 目錄下,生成一些臨時(shí)文件。如果android studio安裝了反編譯工具則可以按F3進(jìn)入代碼,查看源代碼文件,如果有這部分文件,則可以編譯修改代碼。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容