1. 程式人生 > 實用技巧 >釋出自己的Android開源庫到JCenter

釋出自己的Android開源庫到JCenter

簡單記錄一下問題

註冊Bintray賬號

Bintray官網

註冊很簡單(網頁打不開的話應該是需要 ke xue shang wang),但是有一點比較坑,註冊的時候需要填寫郵箱,我當時註冊時,QQ郵箱和網易郵箱都試過了,發現這兩種郵箱都不能用於註冊,其他的國內郵箱沒試過,建議直接用Google郵箱

建庫

註冊完成後,進入主頁點選 Add New Repository 建立一個新的倉庫,如下然後點選 Create 即可

用到的外掛

bintray-publish 外掛GitHub地址

使用

用法很簡單

修改要釋出庫的build.gradle檔案,主要新增三處程式碼

  • 在build.gradle檔案最上面新增如下程式碼(主要是要滿足 buildscript塊提到plugins塊之前,否則可能會出現如下問題 ):

[ERROR] all buildscript {} blocks must appear before any plugins {} blocks in the script

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.github.panpf.bintray-publish:bintray-publish:1.0.0'
    }
}
  • 在build.gradle檔案底部新增如下程式碼,引入外掛依賴:
apply plugin: 'com.github.panpf.bintray-publish' 
  • 在上面的程式碼下面繼續新增如下程式碼(根據自己實際情況填寫,下面只是外掛示例):
publish {
    userOrg = 'panpf'
    groupId = 'com.github.pnaf.bintray-publish'
    artifactId = 'bintray-publish'
    publishVersion = '1.0.0'
    desc = 'Oh hi, this is a nice description for a project, right?'
    website = 'https://github.com/panpf/bintray-publish'
 		repoName = '你在Bintray建立地倉庫名'
}

userOrg: 填入註冊的Bintray使用者名稱即可

groupId: 用於作為組織的唯一標識,通常填入公司的倒排域名,這裡我們自己做著玩,填包名就行

artifactId: 這個直接填庫的名就行,要注意同一個groupId下不會存在兩個相同的artifactId。

publishVersion: 表示當前開源庫的版本號

desc: 對這個庫的描述

website: 對應的github上庫的主頁地址

repoName: 這個非常重要,用上面這個外掛釋出的話,預設幫我們設定釋出到庫名為maven的庫,但我們Bintray帳號中卻沒有建立名為maven的倉庫,因此這裡需要修改成自己建的庫的名字

上面如果沒設定repoName問題的話會出現如下ERROR: 可以看到提示是名為maven的倉庫找不到

HTTP/1.1 404 Not Found [message:Repo ‘maven‘ was not found]

釋出庫

我的是windows系統,在Androidstudio的控制檯用如下命令釋出:

BINTRAY_USERNAME: 註冊的Bintray使用者名稱 BINTRAY_KEY: 自己的Bintray Api Key

gradlew clean build bintrayUpload -PbintrayUser=BINTRAY_USERNAME -PbintrayKey=BINTRAY_KEY -PdryRun=false
//linux:
./gradlew clean build bintrayUpload -PbintrayUser=BINTRAY_USERNAME -PbintrayKey=BINTRAY_KEY -PdryRun=false

下面2個圖簡單演示了怎麼看自己的 bintray API key:


Add to Jcenter

上傳成功後,在bintray的網頁上就會看到我們建立的Repository下面多了一個Package,就是我們上傳的這個:

點選這個package,進入我們上傳庫的詳情頁面,點選右上角的 Actions 選單,點選 Add to Jcenter 選項,彈出的彈窗只需要填寫一下對庫的描述即可,然後等待Bintray稽核即可:

稽核一般幾個小時就可以通過,服務效率很高的,通過後bintray賬號會收到訊息,你繫結的郵件也會有通知:

然後就可以像引用其他三方庫那樣 引用我們自己的庫了,在自己庫的詳情頁,有對應的引用方式: