通過(guò)Gradle打包發(fā)布函數(shù)庫(kù)到JCenter

AndroidStudio將遠(yuǎn)程倉(cāng)庫(kù)默認(rèn)指定為Jcenter倉(cāng)庫(kù)迅箩,位于Bintray網(wǎng)站嫁审。Bintray網(wǎng)站下面還有其他好幾個(gè)倉(cāng)庫(kù)仆救。本文主要介紹如何將Android項(xiàng)目發(fā)布到Jcenter拯杠。

翅萤、注冊(cè)Bintray賬號(hào)

Bintray官網(wǎng):https://bintray.com


也可使用GitHub賬號(hào)登錄

二 其骄、獲取APIKey

上傳項(xiàng)目之前我們需要兩樣?xùn)|西亏镰,一個(gè)就是用戶名,另一個(gè)是APIKey拯爽。APIKey可在這里查看索抓。


三、插件依賴

在項(xiàng)目最外層的build.gradle添加“gradle-bintray-plugin”以及“android-maven-plugin”插件的依賴毯炮。

四逼肯、Module配置

在需要發(fā)布到Jcenter的module(比如library)的build.gradle里配置以下內(nèi)容:

apply plugin: 'com.android.library'

apply plugin: 'com.github.dcendents.android-maven'

apply plugin: 'com.jfrog.bintray'

version = "1.0.0" // 版本號(hào)

android {

compileSdkVersion 23

buildToolsVersion "23.0.3"

resourcePrefix "bankcardformat" // 隨意命名

defaultConfig {

minSdkVersion 15

targetSdkVersion 23

versionCode 1

versionName "1.0"

}

buildTypes {

release {

minifyEnabled false

proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'

}

}

}

dependencies {

compile 'com.android.support:appcompat-v7:23.+'

compile fileTree(dir: 'libs', include: ['*.jar'])

}

def siteUrl = 'https://github.com/smuyyh/BankCardFormat'? ? // Git項(xiàng)目主頁(yè)

def gitUrl = 'https://github.com/smuyyh/BankCardFormat.git' // Git倉(cāng)庫(kù)url

group = "com.yuyh.bankcardformat" // 一般為包名

install {

repositories.mavenInstaller {

// 生成POM.xml

pom {

project {

packaging 'aar'

name 'Android BankCardFormat' // 項(xiàng)目描述

url siteUrl

licenses {

license {

name 'The Apache Software License, Version 2.0'

url 'http://www.apache.org/licenses/LICENSE-2.0.txt'

}

}

developers {

developer { // 開發(fā)者個(gè)人信息

id 'smuyyh'

name 'smuyyh'

email 'smuyyh@gmail.com'

}

}

scm {

connection gitUrl

developerConnection gitUrl

url siteUrl

}

}

}

}

}

task sourcesJar(type: Jar) {

from android.sourceSets.main.java.srcDirs

classifier = 'sources'

}

task javadoc(type: Javadoc) {

options.encoding = "UTF-8" // 設(shè)置編碼,否則中文可能會(huì)提示出錯(cuò)

source = android.sourceSets.main.java.srcDirs

classpath += project.files(android.getBootClasspath().join(File.pathSeparator))

}

task javadocJar(type: Jar, dependsOn: javadoc) {

classifier = 'javadoc'

from javadoc.destinationDir

}

artifacts {

archives javadocJar

archives sourcesJar

}

Properties properties = new Properties()

properties.load(project.rootProject.file('local.properties').newDataInputStream())

bintray {

user = properties.getProperty("bintray.user")

key = properties.getProperty("bintray.apikey")

configurations = ['archives']

pkg {

repo = "maven" // 發(fā)布到Maven庫(kù)

name = "BankCardFormat" // 發(fā)布到JCenter上的項(xiàng)目名字

websiteUrl = siteUrl

vcsUrl = gitUrl

licenses = ["Apache-2.0"]

publish = true

}

}

五桃煎、配置Username和APIKey

在local.properties文件配置Username和APIKey篮幢。

bintray.user= xxxx

bintray.apikey= xxxx

正常情況下local.properties應(yīng)該加入到.gitignore文件里,因?yàn)檫@兩項(xiàng)屬于隱私信息为迈,無(wú)需上傳到GitHub洲拇。當(dāng)然了,也可把bintray.user及bintray.apiKey配置在Gradle用戶目錄下的gradle.properties(不存在則新建)曲尸,例如Windows是在C:/user/username/.gradle赋续,OSX和Linux在~/.gradle

六、ReBuild

Rebuild一下項(xiàng)目另患,會(huì)發(fā)現(xiàn)在/build/outputs/aar下生成兩個(gè)文件纽乱,這就是library打包出來(lái)的二進(jìn)制文件。

七昆箕、上傳項(xiàng)目到Jcenter

在Android Studio的Terminal執(zhí)行以下命令:

gradlew javadocJar

gradlew sourcesJar

gradlew install

gradlew bintrayUpload

執(zhí)行成功之后鸦列,在Bintray個(gè)人主頁(yè)下面可以看到Maven多了一個(gè)Package租冠。


八、申請(qǐng)項(xiàng)目加入Jcenter

九薯嗤、等待審核

審核速度挺快顽爹,一般幾個(gè)小時(shí)左右會(huì)通過(guò)。Bintray會(huì)向您發(fā)送一條成功的信息骆姐。那么就完成上傳了镜粤。

項(xiàng)目依賴

dependencies{? ? compile'com.yuyh.bankcardformat:library:1.0.0'}

項(xiàng)目更新

上傳的庫(kù)進(jìn)行升級(jí)的時(shí)候,須更改build.gradle下的version玻褪、versionCode肉渴、versionName,否則無(wú)法進(jìn)行打包上傳带射。更改完之后重新執(zhí)行上傳項(xiàng)目到Jcenter步驟同规。上傳完成可在項(xiàng)目主頁(yè)下看到更新的版本號(hào)。

———-

問(wèn)題

若在上傳的時(shí)候窟社,出現(xiàn)GBK編碼錯(cuò)誤券勺,嘗試在task javadoc(type: Javadoc) 下設(shè)置UTF-8編碼:

options.encoding = “UTF-8”

無(wú)法解決請(qǐng)參考以下這個(gè)Gradle文件的配置:

https://github.com/msdx/gradle-publish/blob/master/bintray.gradle

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市灿里,隨后出現(xiàn)的幾起案子朱灿,更是在濱河造成了極大的恐慌,老刑警劉巖钠四,帶你破解...
    沈念sama閱讀 206,839評(píng)論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件盗扒,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡缀去,警方通過(guò)查閱死者的電腦和手機(jī)侣灶,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,543評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)缕碎,“玉大人褥影,你說(shuō)我怎么就攤上這事∮酱疲” “怎么了凡怎?”我有些...
    開封第一講書人閱讀 153,116評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)赊抖。 經(jīng)常有香客問(wèn)我统倒,道長(zhǎng),這世上最難降的妖魔是什么氛雪? 我笑而不...
    開封第一講書人閱讀 55,371評(píng)論 1 279
  • 正文 為了忘掉前任房匆,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘浴鸿。我一直安慰自己井氢,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,384評(píng)論 5 374
  • 文/花漫 我一把揭開白布岳链。 她就那樣靜靜地躺著花竞,像睡著了一般。 火紅的嫁衣襯著肌膚如雪掸哑。 梳的紋絲不亂的頭發(fā)上约急,一...
    開封第一講書人閱讀 49,111評(píng)論 1 285
  • 那天,我揣著相機(jī)與錄音举户,去河邊找鬼。 笑死遍烦,一個(gè)胖子當(dāng)著我的面吹牛俭嘁,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播服猪,決...
    沈念sama閱讀 38,416評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼供填,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了罢猪?” 一聲冷哼從身側(cè)響起近她,我...
    開封第一講書人閱讀 37,053評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎膳帕,沒(méi)想到半個(gè)月后粘捎,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,558評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡危彩,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,007評(píng)論 2 325
  • 正文 我和宋清朗相戀三年攒磨,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片汤徽。...
    茶點(diǎn)故事閱讀 38,117評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡娩缰,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出谒府,到底是詐尸還是另有隱情拼坎,我是刑警寧澤,帶...
    沈念sama閱讀 33,756評(píng)論 4 324
  • 正文 年R本政府宣布完疫,位于F島的核電站泰鸡,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏壳鹤。R本人自食惡果不足惜鸟顺,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,324評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧讯嫂,春花似錦蹦锋、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,315評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至千扔,卻和暖如春憎妙,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背曲楚。 一陣腳步聲響...
    開封第一講書人閱讀 31,539評(píng)論 1 262
  • 我被黑心中介騙來(lái)泰國(guó)打工厘唾, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人龙誊。 一個(gè)月前我還...
    沈念sama閱讀 45,578評(píng)論 2 355
  • 正文 我出身青樓抚垃,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親趟大。 傳聞我的和親對(duì)象是個(gè)殘疾皇子鹤树,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,877評(píng)論 2 345

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