使用Bintray發佈library到JCenter中心

使用Bintray發佈library到JCenter中心

1、註冊Bintray

  註冊網址:https://bintray.com,請自行科學上網。

在這裏插入圖片描述

注意

  個人註冊,一定點擊“For Open Source Account Sing Up Here”,不能點擊綠色按鈕,否則
後期編譯會報錯**“HTTP/1.1 404 Not Found [message:Repo ‘maven’ was not found]”**

在這裏插入圖片描述

注意

  關於Email Address,請使用Google郵箱或者使用騰訊的Fox Email郵箱,不要使用QQ郵箱等。

2、創建 maven 倉庫

  註冊成功後,點擊**“ Add New Repository ”,創建倉庫(注意名稱和類型**的填寫)。

在這裏插入圖片描述

3、創建 library 項目

  演示實例Android 6.0權限工具庫: PermissionKit

4、提交項目到 github

  請自行配置提交。

  本實例地址:https://github.com/ProgressiveDevelop/PermissionKit

5、配置 bintray.gradle 腳本

  首先,需要在項目根build.gradle文件中配置bintray插件

 dependencies {
        classpath 'com.android.tools.build:gradle:3.5.3'
        //bintray plugin
        classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1'
        classpath "com.jfrog.bintray.gradle:gradle-bintray-plugin:1.8.4"
    }

  然後,在library項目中創建gradle腳本文件:bintray.bradle

apply plugin: 'com.jfrog.bintray'
apply plugin: 'com.github.dcendents.android-maven'
//源碼站點鏈接
def siteUrl = 'https://github.com/ProgressiveDevelop/PermissionKit'
//git 鏈接
def gitUrl = 'https://github.com/ProgressiveDevelop/PermissionKit.git'
//實例compile 'com.android.kit:permissionkit:1.0.0' :group+name+version
//倉庫組
group = 'com.android.kit'
//版本
version = '1.0.0'
install {
    repositories.mavenInstaller {
        pom {
            project {
                packaging 'aar'
                name 'permissionkit'
                url siteUrl
                licenses {
                    license {
                        name 'The Apache Software License, Version 2.0'
                        url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
                    }
                }
                scm {
                    connection gitUrl
                    developerConnection gitUrl
                    url siteUrl
                }
            }
        }
    }
}
//編譯 Javadoc
task androidJavadocs(type: Javadoc) {
    source = android.sourceSets.main.java.srcDirs
    classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
}
//編譯 xxx-javadoc.jar
task androidJavadocsJar(type: Jar) {
    classifier = 'javadoc'
    from androidJavadocs.destinationDir
}
//編譯 xxx-sources.jar
task androidSourcesJar(type: Jar) {
    classifier = 'sources'
    from android.sourceSets.main.java.srcDirs
}
artifacts {
    archives androidSourcesJar
    archives androidJavadocsJar
}
//讀取配置的賬戶與apiKey
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 {
        version {
            name = '1.0.0'
            desc = 'Android 6.0 權限管理工具庫,基於Androidx,非註解方式'
        }
        //repository 名稱
        repo = 'maven'
        name = 'permissionkit'
        licenses = ['Apache-2.0']
        vcsUrl = gitUrl
        publish = true
    }
}

  最後,在library項目的build.gradle文件後面引入bintray.gradle配置

//引入配置
apply from: './bintray.gradle'

6、編譯

  首先,執行安裝命令

gradlew install

  然後,執行上傳命令

gradlew bintrayUpload

在這裏插入圖片描述

7、提交到 Jcenter

  在項目詳情頁面,點擊**“Add to Jcenter”**
在這裏插入圖片描述

  提交成功後,等待審覈。審覈後會有郵件通知到註冊的郵箱。
在這裏插入圖片描述

8、問題總結

註冊 bintray 容易註冊成團隊賬戶而導致
HTTP/1.1 404 Not Found [message:Repo ‘maven’ was not found]
在這裏插入圖片描述

9、源碼

  https://github.com/ProgressiveDevelop/PermissionKit

發佈了32 篇原創文章 · 獲贊 10 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章