Android studio中使用Maven發(fā)布本地倉庫

前言:

最近在項(xiàng)目中使用到Maven本地倉庫,之前用Maven只是用別人的庫做依賴。而對(duì)與上傳本地倉庫或外部倉庫還不是很了解,在學(xué)習(xí)了別人的技術(shù)文章后在這里做一些總結(jié)。

基本描述:

maven的倉庫分兩類:
1、本地倉庫

maven在本地存儲(chǔ)構(gòu)件的地方。
maven本地倉庫的默認(rèn)位置:在用戶的目錄下.m2/repository/的倉庫目錄。

2、遠(yuǎn)程倉庫

兩個(gè) Maven 中央庫:mavenCentral 和 jcenter。
部署在內(nèi)網(wǎng)服務(wù)器的私有倉庫。

Maven在本地倉庫中的對(duì)應(yīng)存儲(chǔ)路徑:

1、groupId唯一標(biāo)識(shí)符:com.android.dzrefresh 對(duì)應(yīng)路徑:com/android/dzrefresh
2、artifactId類似于項(xiàng)目名稱:App 對(duì)應(yīng)路徑:com/android/dzrefresh/App
3、version版本號(hào):1.0.0 對(duì)應(yīng)路徑:com/android/dzrefresh/App/1.0.0
對(duì)應(yīng)得也就是:
compile 'com.android.dzrefresh:App:1.0.0'

指定本地倉庫路徑:
自定義本地路徑:
repositories {
    maven { url 'D://Users/user2/.m2/repository' }
}
默認(rèn)本地路徑:
repositories {
    mavenLocal()
}

</br>

發(fā)布本地庫流程如下:

一、新建一個(gè)Android項(xiàng)目

在項(xiàng)目下創(chuàng)建一個(gè)Libary(如果直接在Android項(xiàng)目下發(fā)布到本地倉庫會(huì)生成apk包,而lib下生成的是aar包可以作為依賴使用)。

二、配置參數(shù)

在Library也就是剛才創(chuàng)建的AndroidLib下的gradle.build中添加

apply plugin: 'maven'
uploadArchives{
    repositories.mavenDeployer{
        // 本地倉庫路徑
        repository(url:"file://D://Users/user2/.m2/repository/")
        // 唯一標(biāo)識(shí)
        pom.groupId = "com.android.dzrefresh"
        // 項(xiàng)目名稱
        pom.artifactId = "App"
        // 版本號(hào)
        pom.version = "1.0.0"
    }
}

也可以通過maven-publish方式發(fā)布

apply plugin: 'maven-publish'
publishing {
    publications {
        maven(MavenPublication) {
            artifact "D://DZRefresh/xxlib/build/outputs/aar/xxlib-debug.aar"
            groupId "com.android.dzrefresh"
            artifactId "APP"
            version "1.0.0"
        }
    }
}
三、發(fā)布到本地倉庫

maven方式命令

gradlew  uploadArchives

maven-publish方式

gradlew  publishToMavenLocal
四、使用本地庫:

1、在Android項(xiàng)目下的build.gradle文件中配置路徑

   repositories {
        jcenter()
        mavenLocal()
    }

2、引用

compile 'com.android.dzrefresh:App:1.0.0'
最后編輯于
?著作權(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)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,036評(píng)論 25 709
  • 鐵軌有多長(zhǎng) 可以跨越 大地和云天的蒼茫 可以連接 心事和身影的牽腸 鐵軌有多忙 可以忽略 盛夏和嚴(yán)冬的暖涼 可以碾...
    濤濤不絕82閱讀 121評(píng)論 0 1
  • 【one day】文|Lydia谷木青 正如情歌的動(dòng)人在于那份得不到又絕不死心的執(zhí)著,最美的愛情在于即使...
    Lydia谷木青閱讀 1,082評(píng)論 3 13
  • 老三突然出現(xiàn)的時(shí)候,我當(dāng)時(shí)正躺在陰暗潮濕的出租房里臨時(shí)搭建的床鋪上。我兩眼放空,目光抵在低矮的天花板,腦子里思...
    老三家的老三閱讀 561評(píng)論 3 14

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