利用bintray-release发布代码到jcenter

image

传送门 bintray-release,下面开始一步一步发布一个库到 Jcenter

首先 在主工程(根目录)的build.gradle中的添加

repositories {
        ...
        jcenter()
}
    
dependencies {
        ...
        classpath 'com.novoda:bintray-release:0.8.1'
}

第二步在待发布的library中的build.gradle添加

apply plugin: 'com.novoda.bintray-release'
publish {
    userOrg = 'yourUserName'                 //bintray注册的用户名
    groupId = 'com.github.sunrise'           //compile引用时的第1部分
    artifactId = 'Test'                      //compile引用时的第2部分
                                             //总体引用后为 compile 'com.github.sunrise:Test:1.0.0'

    publishVersion = '1.0.0'                 //版本号
    repoName = "yourRepositoryName"          //你要上传至bintray仓库的名称,如果仓库名称是maven可忽略
    desc = 'anything you want'               //描述
    website = 'anything you want'            //网站
}

第三步在androidStudioTerminal中输入以下命令,稍后出现BUILD SUCCESSFUL即上传成功

./gradlew clean build bintrayUpload -PbintrayUser=yourUserName -PbintrayKey=yourAPIKEY -PdryRun=false
文中的yourUserName替换为你注册binary的用户名,yourAPIKEY替换为你的key

你的API KEY可在下图找到

利用bintray-release发布代码到jcenter_第1张图片
image
利用bintray-release发布代码到jcenter_第2张图片
image

上传成功后可看到

利用bintray-release发布代码到jcenter_第3张图片
image

是不是此时已经忍不住试试,然后发现[what the fu...]报错了!!!先别急慢慢往下看,没耐心的可以直接跳到看最后一步

当然很有可能是 BUILD FAILED 红红的字眼出现,不禁会说句“fuc...”突然想起我是个文明的人。。。嘿嘿嘿

别急以下是我出现的问题,大家可以对应着看看:

问题描述一:
注: 某些输入文件使用或覆盖了已过时的 API。 
注: 有关详细信息, 请使用 -Xlint:deprecation 重新编译。 
注: 某些输入文件使用了未经检查或不安全的操作。 
注: 有关详细信息, 请使用 -Xlint:unchecked 重新编译。
解决方法:在根目录的build.gradle添加
allprojects {
    ...
    gradle.projectsEvaluated {
        tasks.withType(JavaCompile) {
            options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation"
        }
    }
}
问题描述二:中文注释导致
解决方法:在根目录的build.gradle添加
allprojects {
    ...
    tasks.withType(Javadoc) {
        options.addStringOption('Xdoclint:none', '-quiet')
        options.addStringOption('encoding', 'UTF-8')
        options.addStringOption('charSet', 'UTF-8')
    }
}
问题描述二:中文注释导致
解决方法:在根目录的build.gradle添加
allprojects {
    ...
    tasks.withType(Javadoc) {
        options.addStringOption('Xdoclint:none', '-quiet')
        options.addStringOption('encoding', 'UTF-8')
        options.addStringOption('charSet', 'UTF-8')
    }
}
问题描述三:
> Could not create package 'xxx/xxx/xxx': HTTP/1.1 404 Not Found [message:Repo 'xxx' was not found]
解决方法:
"仔细看上传时的repoName"
"仔细看上传时的repoName"
"仔细看上传时的repoName"
重要事情说三遍
repoName = "sunrise" //你要上传至bintray仓库的名称,如果仓库名称是maven可忽略

最后一步 同步到Jcenter,耐心等待审核(注:版本升级不用再次同步到Jcenter)

利用bintray-release发布代码到jcenter_第4张图片
image

审核完成很开心,又可以愉快的撸代码了(说完突然好想哭)

image

利用bintray-release发布代码到jcenter_第5张图片
2.gif

你可能感兴趣的:(利用bintray-release发布代码到jcenter)