新版Bintray-极简上传Library到JCenter,可上

作者: 茳茳 | 来源:发表于2017-08-29 09:45 被阅读126次

    背景

    最近得闲 将封装的开源项目上传到JCenter上,方便供大家使用,但是突然发现Bintray网站更新变化很大,
    以前老方法上传,过于复杂,代码量也很多,每次编写新库上传,复制代码心累,大家都懂。于是百度,有没有更简便上传方式
    我在网上网上很多博客讲解的 Bintray-极简上传Library到JCenter 发现对自定义maven仓库名配置,
    很多博客文章里没有说明,这一篇文章是讲解如何上传自定义maven仓库下。

    开始我们的上传之路!


    注册

    注册是踩坑的第一步,很多博客或者网站都是直接推荐去官网首页注册:

    绝对不要去这里注册

    20161217134804632.png

    注意:千万别点这里注册,这里现在默认注册的是组织,并不是个人

    我就是这一步走错了被这一步坑了,导致一天都没将开源项目提上去

    重要的事情说三遍:

    个人正确的注册地址:https://bintray.com/signup/oss

    个人正确的注册地址:https://bintray.com/signup/oss

    个人正确的注册地址:https://bintray.com/signup/oss

    后边注册的步骤就很简单了,有github或者google账户的同学直接登录就行了,如果要注册需要注意邮箱不能是国内的邮箱


    获取keyuser

    ![Uploading 20170823113242_736797.png . . .] 20170823113242.png

    创建maven仓库

    20170823114936.png

    注意:创建的maven仓库类型都写成maven,仓库名称 任意名字,后面配置信息会用到仓库名称

    20161217141455168.png

    极简上传

    查看了网上的很多上传方法都很复杂,也都亲自实践过,给大家介绍最简单的一种,其他复杂的直接忽略了,因为也不是什么很高深的东西,只要能到达目的就行了!

    jecenter-Jecenter上传开源库有兴趣的同学可以去看看源码

    前提是你已经将需要开源的项目独立成moudel,并且已经是com.android.library

    1.根目录下的build.gradle中加入上传开源库的依赖:

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

    2.librarymoudel中加入 apply

    apply plugin: 'com.novoda.bintray-release'
    
    • <font color=red size=4>注意:bintray-releas的版本 依赖,对应你项目使用 Gradle 版本</font>

      1.bintray-releas version 0.5.0 对应 Gradle 是 version 3.4+ (包括3.4)

      2.bintray-releas version 0.4.0 对应 Gradle 是 version 3.3+ (包括3.3)

      3.bintray-releas version 0.3.4 对应 Gradle 是 version 1.3.0+(包括1.3)

    如果版本不对应 就有可能项目库上传失败 红线内没有版本号信息

    20170826184107.png 20170826184635.png

    3.如果你开源库中有中文注释在moudelbuild.gradle加入格式

    allprojects {
        repositories {
            jcenter()
        }
        //加上这些
        tasks.withType(Javadoc) {
            options{ encoding "UTF-8"
                charSet 'UTF-8'
                links "http://docs.oracle.com/javase/7/docs/api"
            }
        }
    }
    

    4.忽略错误信息:moudelbuild.gradle

    android {
    ******
    ******
     lintOptions {
            abortOnError false
        }
    }
    

    5.配置基本信息

    publish {
        repoName="ycjiang"//仓库名
        userOrg = 'ycjiang'      //bintray注册的用户名
        groupId = 'com.ycjiang'         //compile引用时的第1部分groupId
        artifactId = 'QiniuModule'     //compile引用时的第2部分项目名
        publishVersion = '1.0.1'    //compile引用时的第3部分版本号
        desc = 'This is a rxbus same of eventbus extend library '//d项目描述
        repoName="ycjiang" //你的仓库名称,没有填写默认仓库是maven//这也是很多人上传仓库不对名问题最多情况,
        website = '' //github 托管地址
    }
    

    <font color=red size=4>6.仓库名重要性</font>

    • repoName 如果没有填写,上传的库默认仓库是maven,这个:bintray-release上传也是最多原因.

    • 很多用户的压根没有这个仓库, 然后百度,发现,Bintray需要手动创建仓库是maven。

    • 既然手动创建仓库,为什么仓库名为何自己用定义仓库名, Bintray是可以新建仓库.
      repoName 这个属性就可以自己项目上传到自己定义仓库下。

    通过配置我们最后的依赖地址=第一部分+第二部分+第三部分;

    compile  'com.ycjiang:QiniuModule:1.0.1'
    

    版本更新只需要修改publishVersion 即可;

    7.切换到AndroidStudio temrinal或者cmd后台中运行:

    • 配置基本信息没有填写 bintrayUser和bintrayKey 使用下面
    windows 系统:
    gradlew clean build bintrayUpload -PbintrayUser=BINTRAY_USERNAME -PbintrayKey=BINTRAY_KEY -PdryRun=false
    
    os x系统中

    如果出现拒绝该命令./gradlew: Permission denied,可以先运行 chmod +x gradlew再运行该命令;第一次运行需要下载文件需要稍微等待。

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

    其中BINTRAY_USERNAME换成bintray注册的用户名,BINTRAY_KEY换成自己的APIKEY

    8.观察后台输出:

    这里写图片描述

    回车执行命令,看到BUILD SUCCESS即上传成功

    9.发布项目到公用Jecenter

    回到主页的你上传仓库中,点击进入,如果你上次成功即可看见你刚刚上次的开源项目

    20170826191257.png

    点击进入项目中,然后点击add加入commit就行了,一般需要等待审核通过,一般5-6小时 commit内容推荐是同英文,不要中文

    20170823124104.png

    10.依赖使用

    在审核通过前可以通过配置自己私有仓地址使用

    20170826192820.png

    在更目录下build.gradle配置地址

    allprojects {
        repositories {
            jcenter()
           jcenter(){ url 'http://jcenter.bintray.com/'} //JCenter下载慢测试
             maven { url "https://dl.bintray.com/ycjiang/maven" }//审核前可使用
        }
    

    项目中加入依赖:

    compile  'com.ycjiang:QiniuModule:1.0.1'
    

    好了,现在你就可以在你项目中依赖你的开源库了,就是这么简单!


    项目

    在第一次上传的过程中可以参考我的工程仿照配置

    传送门-开源项目-JiPlay-戳我


    相关文章

      网友评论

      • 无心下棋:我那个用QQ邮箱注册的😬
        茳茳:推荐不要使用QQ邮箱,容易收不到验证码,网易163好一点

      本文标题:新版Bintray-极简上传Library到JCenter,可上

      本文链接:https://www.haomeiwen.com/subject/ebzndxtx.html