<技術(shù)[轉(zhuǎn)載]>:Android Module內(nèi)含第三方aar庫(kù)依賴,上傳Maven的方法

轉(zhuǎn)載:android library module內(nèi)含aar包,完整打包上傳maven的方法

  • 思路一:
    將引用的aar解壓,把解壓后的資源分別放入到現(xiàn)用的Android Module里。

  • 思路二:
    借助Maven,將引用的aar發(fā)布的maven倉(cāng)庫(kù),AndroidModule通過(guò)maven地址引用該aar,這樣最終打包的aar內(nèi)含有該maven引用。

對(duì)比:思路二更提現(xiàn)了封裝解耦的特性,代碼清晰。

實(shí)現(xiàn):

將已打包好的aar包 發(fā)布成一個(gè)maven庫(kù)

1、在自己的項(xiàng)目中,新建一個(gè)java-library module

image.png

【注:其中 wex_sdk-0.18.0.arr 為第三方aar依賴庫(kù)】

2、將需要上傳的aar放在 libs

3、配置 build.gradle

apply plugin: 'java-library'

sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8

tasks.withType(JavaCompile) {
    options.encoding = 'UTF-8'
}

//上傳到maven
apply plugin: 'maven'

def coreAarFile = file('libs/weex_sdk-0.18.0.aar')  //第三方aar依賴庫(kù)
artifacts {
    archives coreAarFile
}

uploadArchives {
    repositories {
        mavenDeployer {
            repository(url: "file://xxx")  //上傳的maven庫(kù)地址
            pom.version = "1.0.8"  //當(dāng)前需要上傳的aar的版本
            pom.artifactId = "weex"  //當(dāng)前需要上傳的aar的id
            pom.groupId = "com.masonliu"  //當(dāng)前需要上傳的aar的groupId
        }
    }
}

4、使用
在項(xiàng)目中引入依賴:

//使用的時(shí)候要加@aar
dependencies {
    api 'com.masonliu:xxx:1.0.0@aar'
}

5、參考資料:

最后編輯于
?著作權(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ù)。

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