上传android library到jcenter仓库实践

因为之前开发过程中经常会引用到一些的开源库,如butterknife、xrecyclerview、picasso等。其中最方便的引用方式就是在gradle中用compile来引用。例如

compile'com.jakewharton:butterknife:8.4.0'

在使用的过程中慢慢的就萌发了把自己写的一些工具库也用这种方式来进行托管的想法。下面就是记录我第一次上传开源库到jcenter的实践。

第一步 Bintray和jCenter

Jcenter是Bintray下的一个仓库,所以先要去注册一下Bintray帐号,没有的同学看下文如何注册。

注册网址 

https://bintray.com/signup/oss 

注意从首页进去默认的注册地址是组织注册不是个人注册。需要拉到底下有个个人注册的。

注册过程如下


上传android library到jcenter仓库实践_第1张图片

注册成功后,新建一个maven库


上传android library到jcenter仓库实践_第2张图片

新建maven时仓库名好像必须为maven 否则在Android Studio会上传失败。有兴趣的同学可以试一下

上传android library到jcenter仓库实践_第3张图片

注册完成。

第二步开始创建Android library

新建一个Module

上传android library到jcenter仓库实践_第4张图片

选择Android Library 下一步

上传android library到jcenter仓库实践_第5张图片
上传android library到jcenter仓库实践_第6张图片

library就建立好了

上传android library到jcenter仓库实践_第7张图片


第三步配置项目gradle

我们这里借助于bintray-release插件来将类库上传至binary,有兴趣的朋友可以试试其他方法,我之前试过其他的几种方法都没有成功。

bintray-release插件的GitHub地址:https://github.com/novoda/bintray-release

library的build文件中加入如下代码。

apply plugin: 'com.novoda.bintray-release'

需要放在apply plugin: 'com.android.library'的后面

然后添加如下代码

buildscript {   

     repositories {       

         jcenter()   

     }  

     dependencies {

        classpath'com.novoda:bintray-release:

      }

}

publish {    

      userOrg = 'yancy2430' //注册Bintray的用户名

      groupId='com.tdeado'//组ID

      artifactId = 'bottomnav'//组件标示

      publishVersion = '1.0.0'//版本

      desc = '这是描述' 

      website = 'https://github.com/yancy2430/BottomNavView'//如果有上传GitHub可以填写URL

}

第四步 上传

在命令行输入

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

其中BINTRAY_USERNAME更换成你的用户名

BINTRAY_KEY更换成你的Key 可以从bintray的设置里获取


上传android library到jcenter仓库实践_第8张图片

然后在Android Studio的命令行里执行

显示这个就表示上传成功了

上传android library到jcenter仓库实践_第9张图片

可以到你的bintray的仓库里看看是不是有显示你的library,点击进去如果显示下图这样的就说明上传成功了。


上传android library到jcenter仓库实践_第10张图片

只是这样还不能被别人引用 最后还需要提交到jcenter

你需要点右下角的下面那个add to jcenter 然后申请加入jcenter

然后写几句描述

提交

 就耐心等待就好了!!审核通过后会有邮件,审核时间很短 我晚上申请第二天早上就邮件提示我通过了。

就成功的完成了一个library从创建到提交到审核到引用的所有阶段。

你可能感兴趣的:(上传android library到jcenter仓库实践)