Android快速發(fā)布項(xiàng)目到j(luò)center
最近在整理項(xiàng)目的時(shí)候,想要上傳至Jcenter,可以讓大家一句代碼就可以引入。就在網(wǎng)上尋找,然而網(wǎng)上有些方法實(shí)在是太麻煩,故寫此篇文章將心酸歷程寫下,讓各位老司機(jī)少走彎路,快速發(fā)布。而且最近更坑人的是bintray改版了,所以現(xiàn)在很多人上傳成功代碼后發(fā)現(xiàn)沒有Add to Jcenter按鈕,天啦擼,坑死人。
下面由我?guī)е魑灰徊讲阶呦虼笈V罚呦蛐腋1夹】?。本文?zhǔn)備采用鴻洋推薦的bintray-release這個(gè)插件,個(gè)人感覺比gradle-bintray-plugin要方便很多。
第一步:申請Bintray賬號并獲取所需信息(非常重要,仔細(xì)看步驟)
為什么要注冊這個(gè)賬號呢,因?yàn)閖center()屬于bintray旗下的一個(gè)倉庫。
所以各位大兄弟需要一個(gè)bintray的賬號撒。注冊網(wǎng)址:https://bintray.com/
走到這里,你已經(jīng)錯(cuò)完了,除非你是企業(yè)用戶或者是等待30天以后,為什么呢?看圖說話!
個(gè)人免費(fèi)版的注冊地址https://bintray.com/signup/oss
注意一下郵箱問題:不能用QQ,163等,如果用的Github快速登錄,也要注意郵箱問題。
獲取信息:登陸后在首頁右上角點(diǎn)擊用戶名進(jìn)入個(gè)人主頁,然后點(diǎn)擊用戶名下面的Edit Profile進(jìn)入個(gè)人信息編輯頁面,接下來點(diǎn)擊頁面左邊列表的最后一項(xiàng)API Key,保存下來,待會兒要用 。
如圖所示點(diǎn)擊最右邊箭頭指示的復(fù)制按鈕即可復(fù)制你的API Key:
第二步:引入bintray-release
首先你應(yīng)該有一個(gè)自己待上傳的項(xiàng)目。我在這里用我的一個(gè)Android library模擬一個(gè)簡單的項(xiàng)目。tobebetter是個(gè)Android library,主要用來存放一一個(gè)數(shù)字時(shí)鐘,我們現(xiàn)在要將其上傳到j(luò)center。
項(xiàng)目的build.gralde引入
在你的項(xiàng)目的build.gradle添加bintray-release的classpath,注意是項(xiàng)目的build.gradle,不是module的,MyApplication3/build.gradle。
classpath 'com.novoda:bintray-release:0.3.4'
配置待上傳moudle的build.gralde
來到你想要上傳的module,針對文章開始的圖即MyApplication3/tobebetter/build.gradle。
- apply plugin: 'com.novoda.bintray-release'//添加
- //添加
- publish {
- userOrg = 'shantecnology'//bintray.com用戶名
- groupId = 'com.halloandroid'//jcenter上的路徑
- artifactId = 'tobebetter'//項(xiàng)目名稱
- publishVersion = '1.0.0'//版本號
- desc = 'this is for test'//描述,不重要
- website = 'https://github.com/shanlovana/tobebetter'//網(wǎng)站,最好有,不重要
- }
按照圖片知道編寫即可,細(xì)節(jié)有注釋了,假設(shè)按照上述的編寫,并上傳成功,那么你的項(xiàng)目最終引入的方式為:
- compile 'com.halloandroid:tobebetter:1.0.0
完成上面的配置,我們就開始準(zhǔn)備上傳了。
上傳代碼至Bintray
上傳很簡單,在Android Studio的Terminal面板進(jìn)行,執(zhí)行下面的代碼即可:
windows系統(tǒng):
- gradlew clean build bintrayUpload
- -PbintrayUser=shantecnology
- -PbintrayKey=xxxxxxxxxxxxxxxxxxxxxx
- -PdryRun=false
Mac系統(tǒng):
- ./gradlew clean build bintrayUpload
- -PbintrayUser=shantecnology
- -PbintrayKey=xxxxxxxxxxxxxxxxxxxxxx
- -PdryRun=false
user就是用戶名,key就是我們剛才的Api key,dryRun是一個(gè)配置參數(shù),當(dāng)為true的時(shí)候,會運(yùn)行所有的環(huán)節(jié),但是不會上傳。
然后就是等待,當(dāng)運(yùn)行并上傳完成,看到BUILD SUCCESSFUL就沒問題了,如果有問題,根據(jù)log排查下。
到此就上傳完成,是不是很快呢!
進(jìn)入我們的上傳的空間中就會看到我們的項(xiàng)目,例如我剛上傳的地址:https://bintray.com/shantecnology/maven
你上傳的地址在:https://bintray.com/你的用戶名/maven
提交的時(shí)候要做一個(gè)簡短的英文描述,盡量不要用中文。
教程到此就結(jié)束了,不過目前還是不能直接引用的,你需要等待bintray的工作人員審核,審核通過會給你發(fā)送站內(nèi)Message,大概兩個(gè)小時(shí)左右,并且Add to Jcenter那個(gè)按鈕就消失了。
注意事項(xiàng):
亂碼問題:
注釋中有中文,可能會出現(xiàn):編碼GBK的不可映射字符
1,項(xiàng)目的build.gradle中添加:
- allprojects {
- tasks.withType(Javadoc) {
- options{
- encoding "UTF-8"
- charSet 'UTF-8'
- links "http://docs.oracle.com/javase/7/docs/api"
- }
- }
- }
2,其實(shí)我覺得完全可以將中文注釋換成英文,畢竟我們是要成為大佬的男人,你懂得!百度翻譯,必應(yīng)翻譯。。。。
版本更新
我們上傳完成后,肯定會涉及到更新問題,那么How to update呢?
- publish {
- userOrg = 'shantecnology'//bintray.com用戶名
- groupId = 'com.halloandroid'//jcenter上的路徑
- artifactId = 'tobebetter'//項(xiàng)目名稱
- publishVersion = '2.0.0'//版本號
- desc = 'this is for test'//描述,不重要
- website = 'https://github.com/shanlovana/tobebetter'//網(wǎng)站,最好有,不重要
- }
大部分都不用動,只要修改下版本號就可以了,修改完成后,執(zhí)行上傳那段代碼,上傳完成后,點(diǎn)擊下圖按鈕即可。更新的審核比較快,稍等一下就行了。