Android 發佈開源項目到 jcenter

爲什麼要上傳 Android Library 到 JCenter

方便 其他 Android 開發者 遠程使用你的代碼 Android Library。即,通過在 Android Studiobuild.gradle 文件中添加一句依賴即可

dependencies {
  compile 'com.squareup.okhttp:okhttp:2.4.0'
}

如何上傳

1、準備工作

1、註冊賬號

爲什麼要註冊這個賬號呢,因爲 jcenter() 屬於 bintray 旗下的一個倉庫

注意
1、進入官網,點擊 Start your free trial 註冊的是企業版,我們需要的是個人版,所以直接點擊我上邊的鏈接註冊
2、建議直接關聯 Github 賬號註冊 & 登錄
3、如果你的 Github賬號是 qq 郵箱會沒有反應,建議 Gmail

2、登錄後,查看你的 API key
記住,一會兒要用
在這裏插入圖片描述
3、這時候你應該有一個待上傳的項目
Android中module怎麼用? 中,我們有一個項目,引入了 test ,其中 MainActivity 每次打開都彈出 “見到你很高興”
在這裏插入圖片描述
4、創建一個倉庫
在這裏插入圖片描述
在這裏插入圖片描述
(科學上網)

5、Repo ‘maven’ was not found
如果按照 鴻洋 大神的博客做,不寫 repoName ,會默認上傳到一個名爲 maven 的倉庫,所以會報錯如下
在這裏插入圖片描述

2、引入bintray-release

在你的項目的 build.gradle 添加 bintray-release 的 classpath ,bintray-release的Github地址

classpath 'com.novoda:bintray-release:0.3.4'

注意是項目的 build.gradle,不是 module 的
在這裏插入圖片描述
1 、ERROR: Unable to load class ‘org.gradle.api.internal.component.Usage’

由於教程是按照 鴻洋Carson_Ho 兩位大神的博客操作的,所以他們引入的 bintray-release 是 0.3.4 ,版本比較老,跟我們現在的 gradle 版本不兼容,會報錯如下
在這裏插入圖片描述
因此我們去bintray-release Github主頁看下最新版本修改下即可,目前爲止改成 0.9.2 版本
在這裏插入圖片描述

3、待上傳moudle的build.gralde

在這裏插入圖片描述

apply plugin: 'com.android.application'
apply plugin: 'com.novoda.bintray-release'//添加bintray插件

android {
    不變
}

dependencies {
   不變
}

//添加
publish {
    userOrg = 'lixiaoyu2333'        //bintray.com用戶名
    repoName = 'Test'				//新建的倉庫名
    groupId = 'com.lxy'             //jcenter上的路徑
    artifactId = 'test'             //項目名稱
    publishVersion = '1.0.0'        //版本號
    desc = 'Activity show toast'    //項目描述
    website = 'https://github.com/lixiaoyu2333/test.git'  //網站,不重要;如果上傳了Github,就放Github項目地址
}

1、userOrg 是 用戶名,就是我們剛纔註冊的網站的,右上角顯示的這個名字
在這裏插入圖片描述
2、gradle 中 依賴 okhttp時,這樣寫

dependencies {
  compile 'com.squareup.okhttp:okhttp:2.4.0'
}

這個路徑形式 = GROUP_ID:ARTIFACT_ID:VERSION_ID

保持你的 library module 的名字同 artifactId一樣,我們的 library 是 test,所以 artifactId 寫 test

按照上面編寫即可,假設按照上述的編寫,最終引入的方式爲:

implementation com.lxy:test:1.0.0"

4、上傳

在 Terminal 中執行以下命令

// 每行命令均用空格隔開,此處是爲了展示纔會分行
gradlew.bat clean build bintrayUpload 
-PbintrayUser=lixiaoyu2333  // Binary用戶名
-PbintrayKey=*************  // Binary上的API key,剛纔保存的
-PdryRun=false //dryRun是一個配置參數,當爲true的時候,會運行所有的環節,但是不會上傳

命令一行寫完,每行命令用空格隔開
在這裏插入圖片描述

1、Deprecated Gradle features were used in this build, making it incompatible with Gradle 6.0.
在這裏插入圖片描述
由於 我們的 test module 使用的 gradle、gradle tools版本不一致導致的,由於 test 是我們本地項目,查看下
在這裏插入圖片描述
在這裏插入圖片描述
比我們現在的 MyApplication 項目中的版本高,我們修改本地的 gradle 和 gradle tool 版本後,重新運行命令,讓後等待成功即可
在這裏插入圖片描述
刷新下 bintray.com ,上傳成功了
在這裏插入圖片描述
點擊進去該,點擊Add To jcenter

在這裏插入圖片描述
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章