釋出到jcenter路過各種坑,嘗試了各個大神的文章一直跑步起來,這裡綜合一下
demo github.com/CarGuo/Publ…
主要是針對新版本的bintray,釋出Android的lib釋出Jcenter,需要的Gradle腳本及屬性檔案.
bintray.gradle: 用于釋出到JCenter的腳本。
build.gradle: project下的腳本
gradle.properties: 在bintray.gradle對應的屬性,新版本增加了組織的概念
lib/build.gradle: 針對需要釋出的model,其中切記
apply from: '../bintray.gradle'一定要寫在最後面
1. 注冊儲存bintray
bintray的位址:bintray.com/,注冊時候qq郵箱和163郵箱注冊不了,微軟的live郵箱和新浪郵箱可以注冊。
網上大多數文章都說進入後會有一個API Key,但是我在edit profile一直沒找到,直達後來建立了maven之後才發現。
記住賬号名以及API Key是bintray上傳必須的。
目前我是放在了項目的gradle.properties下,需要的時候就填寫了釋出,各位如果有更好的辦法可以提供下
BINTRAY_USER=bintray account name
BINTRAY_KEY=bintray API Key
2. project目錄下的build.gradle檔案,對應build.gradle
主要添加這個依賴
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.github.dcendents:android-maven-gradle-plugin:1.5'
classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.6'
}
}
3. 在lib的這個build.gradle的底部添加以下代碼:
(一定要在底部,對應build.gradle主要添加這個依賴) apply from: './bintray.gradle'
4.根目錄下的gradle.properties
接下來對内容進行配置,下面是一個例子:

參照圖檔
BINTRAY_USER= 你在bintray上的賬号名
BINTRAY_KEY= 你在bintray上的API KEY
PROJ_USER_ORG=你在bintray上的組織名字
PROJ_USER_MAVEN=你在bintray上的repo名字
PROJ_NAME=你在bintray上的repo名字下的包名
PROJ_GROUP= 這是上的groupId,自己配置
PROJ_VERSION=這是上面的version,自己配置
PROJ_ARTIFACTID=上面的artifactId
PROJ_WEBSITEURL=github上的url就好了,可以不填
PROJ_ISSUETRACKERURL=可以不填
PROJ_VCSURL=github上的ssh就好了,可以不填
PROJ_DESCRIPTION=描述,可以不填
DEVELOPER_ID=釋出人id,自己填
DEVELOPER_NAME=釋出人名字,自己填
DEVELOPER_EMAIL=釋出人郵箱,自己填
上面的例子最終在Android Studio中的引用形式為:
dependencies {
compile 'com.shuyu:bbb:1.0.0'
}
它的格式是PROJ_GROUP:PROJ_ARTIFACTID:PROJ_VERSION組成。
4. 執行釋出指令
執行gradlew bintrayUpload将庫釋出到 bintray.com.
gradlew bintrayUpload
5. 将庫加入Jcenter
最後一步,需要登入bintray.com,将我們剛剛釋出的庫申請加入到jcenter,這樣别人才能直接引用到。
6、 備注與問題
bintray上的建立:
這裡可以找到你的api key
你需要先建立repo,不然會出現404找不到package,其中name可以根據你的喜歡來填寫,後面對應配置到上面gradle.properties的的PROJ_USER_MAVEN
你還需要再改repo下建立包,不然會出現404找不到package,主要添加name,後面對應配置到上面gradle.properties的PROJ_NAME
新版本有組織的概念,這個就是組織id,後面對應配置到上面gradle.properties的PROJ_USER_ORG
一般出現401,400,404的基本都是沒有建立好repo和package,還有就是groupId不對,最後就是username和apikey正确就好了
demo:github.com/CarGuo/Publ…