Android Studio上傳項目到Maven倉庫

前期準備

安裝JDK環(huán)境端逼。用Nexus新建ReleaseSnapshot maven倉庫粘室。

參考《使用Nexus搭建maven私有倉庫》


Android Studio

創(chuàng)建project

包名com.maven.studio

create project

創(chuàng)建library

包名com.maven.studio.library

new library

寫代碼

新建GradleTest

package com.maven.studio.library;

public class GradleTest {
    public void display(){
        System.out.println("gradle test");
    }
}

新建gradle.properties

library module 下新建gradle.properties溉知,并配置:

VERSION=1.0
GROUP_ID=com.maven.studo.library
ARTIFACT_ID=test

RELEASE_URL=http://192.168.86.130:8081/repository/{release倉庫名}/
SNAPSHOT_URL=http://192.168.86.130:8081/repository/{snapshot倉庫名}/

NAME=admin
PASSWORD=admin123

當然在工程目錄下的gradle.properties配置遣鼓,也是可以的酸役。192.168.86.130是maven倉庫ip地址栗竖。

新建gradle上傳腳本

在library module下,新建maven_push.gradle

apply plugin: 'maven'
apply plugin: 'signing'

configurations {
    deployerJars
}

repositories {
    mavenCentral()
}

// 判斷版本是Release or Snapshots
def isReleaseBuild() {
    return !VERSION.contains("SNAPSHOT");
}

// 獲取倉庫url
def getRepositoryUrl() {
    return isReleaseBuild() ? RELEASE_URL : SNAPSHOT_URL;
}

uploadArchives {
    repositories {
        mavenDeployer {
            beforeDeployment {
                MavenDeployment deployment -> signing.signPom(deployment)
            }

            pom.version = VERSION
            pom.artifactId = ARTIFACT_ID
            pom.groupId = GROUP_ID

            repository(url: getRepositoryUrl()) {
                authentication(userName: NAME, password: PASSWORD) // maven授權信息
            }
        }
    }
}

// 進行數(shù)字簽名
signing {
    // 當 發(fā)布版本 & 存在"uploadArchives"任務時维咸,才執(zhí)行
    required { isReleaseBuild() && gradle.taskGraph.hasTask("uploadArchives") }
    sign configurations.archives
}

snapshot版是不需要進行數(shù)字簽名的剂买,但release必須數(shù)字簽名。

更多任務

例如對工程生成javadoc.jar癌蓖、上傳source.jar瞬哼,只要在maven_push.gradle加上:

// type顯示指定任務類型或任務, 這里指定要執(zhí)行Javadoc這個task,這個task在gradle中已經(jīng)定義
task androidJavadocs(type: Javadoc) {
    // 設置源碼所在的位置
    source = android.sourceSets.main.java.sourceFiles
}

// 生成javadoc.jar
task androidJavadocsJar(type: Jar) {
    // 指定文檔名稱
    classifier = 'javadoc'
    from androidJavadocs.destinationDir
}

// 生成sources.jar
task androidSourcesJar(type: Jar) {
    classifier = 'sources'
    from android.sourceSets.main.java.sourceFiles
}

// 產(chǎn)生相關配置文件的任務
artifacts {
    archives androidSourcesJar
    archives androidJavadocsJar
}

導入上傳腳本

然后在library/build.gradle導入maven_push.gradle腳本:

apply from: 'maven_push.gradle'

執(zhí)行gradle上傳任務

然后Sync gradle一下,會發(fā)現(xiàn)Gradle任務窗口租副,多了upload任務快倒槐,里面有uploadArchives task. 右鍵->Run雙擊

uploadArchives
deploy

顯示BUILD SUCCESS后,打開nexus界面-> component

upload success

com.maven.studio.library上傳成功附井!


Gradle引入依賴

gradle配置

修改工程根目錄build.gradle

allprojects {
    repositories {
        jcenter()

        // maven { url "http://192.168.86.130:8081/repository/{release倉庫名}/" }
        maven { url "http://192.168.86.130:8081/repository/{snapshot倉庫名}/" }
    }
}

修改module下的build.gradle

dependencies {
    ...

    // groupId : artifactId : version
    compile 'com.maven.studio.library:test:1.0-SNAPSHOT'
}

Sync gradle同步一下maven倉庫讨越,如果gradle build完成,證明成功引入依賴了永毅。

寫代碼

MainActivity

成功引入com.maven.studio.library依賴把跨!


相關閱讀:

《InteliJ上傳Java項目到Maven倉庫》
《發(fā)布Android Library到Bintray、JCenter》

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末沼死,一起剝皮案震驚了整個濱河市着逐,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌意蛀,老刑警劉巖耸别,帶你破解...
    沈念sama閱讀 217,084評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異县钥,居然都是意外死亡秀姐,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,623評論 3 392
  • 文/潘曉璐 我一進店門若贮,熙熙樓的掌柜王于貴愁眉苦臉地迎上來省有,“玉大人,你說我怎么就攤上這事谴麦〈姥兀” “怎么了?”我有些...
    開封第一講書人閱讀 163,450評論 0 353
  • 文/不壞的土叔 我叫張陵匾效,是天一觀的道長舷蟀。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么野宜? 我笑而不...
    開封第一講書人閱讀 58,322評論 1 293
  • 正文 為了忘掉前任碗殷,我火速辦了婚禮,結果婚禮上速缨,老公的妹妹穿的比我還像新娘。我一直安慰自己代乃,他們只是感情好旬牲,可當我...
    茶點故事閱讀 67,370評論 6 390
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著搁吓,像睡著了一般原茅。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上堕仔,一...
    開封第一講書人閱讀 51,274評論 1 300
  • 那天,我揣著相機與錄音,去河邊找鬼沉唠。 笑死焊夸,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的恼五。 我是一名探鬼主播昌罩,決...
    沈念sama閱讀 40,126評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼灾馒!你這毒婦竟也來了茎用?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 38,980評論 0 275
  • 序言:老撾萬榮一對情侶失蹤睬罗,失蹤者是張志新(化名)和其女友劉穎轨功,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體容达,經(jīng)...
    沈念sama閱讀 45,414評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡古涧,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,599評論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了花盐。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蒿褂。...
    茶點故事閱讀 39,773評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖卒暂,靈堂內(nèi)的尸體忽然破棺而出啄栓,到底是詐尸還是另有隱情,我是刑警寧澤也祠,帶...
    沈念sama閱讀 35,470評論 5 344
  • 正文 年R本政府宣布昙楚,位于F島的核電站,受9級特大地震影響诈嘿,放射性物質發(fā)生泄漏堪旧。R本人自食惡果不足惜削葱,卻給世界環(huán)境...
    茶點故事閱讀 41,080評論 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望淳梦。 院中可真熱鬧析砸,春花似錦、人聲如沸爆袍。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,713評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽陨囊。三九已至弦疮,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間蜘醋,已是汗流浹背胁塞。 一陣腳步聲響...
    開封第一講書人閱讀 32,852評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留压语,地道東北人啸罢。 一個月前我還...
    沈念sama閱讀 47,865評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像胎食,于是被迫代替她去往敵國和親伺糠。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,689評論 2 354

推薦閱讀更多精彩內(nèi)容