通过bintray发布Library到 jcenter
作者:互联网
先说下注册,如下图所示,如果点下图中那个大大的绿色按钮就错了,因为那样注册的是一个组织
注册个人的地址是: https://bintray.com/signup/oss
现在以下图中baselib这个Library为例,说下通过bintray发布Library到 jcenter步骤:
1、项目根目录的build文件添加代码:
classpath 'com.novoda:bintray-release:0.9'
2、baselib的build文件添加代码:
apply plugin: 'com.novoda.bintray-release'
publish {
userOrg = 'sqf251' //bintray注册的用户名
groupId = 'com.bsoft.hlwyy' //compile引用时的第1部分groupId
artifactId = 'baselib' //compile引用时的第2部分项目名
publishVersion = '1.0.0' //compile引用时的第3部分版本号
desc = 'bsoft互联网医院基础库'
website = 'http://jkcs.bsoft.com.cn/hc/app/android/hlwyy_baselib'
}
3、创建maven仓库(已创建的可以跳过)
注意,这里的仓库名必须要是maven,否则运行命令的时候会报错,下面的Type我们也选maven。
4、创建完成后,进入仓库,点击add new package,填写如下信息
注意,这里的Name要和我们Project中配置的artifactId 一致,否则会上传失败。
5、上传Library到自己创建的maven仓库:
最后打开Termainal执行命令
gradle clean build bintrayUpload -PbintrayUser=BINTRAY_USERNAME -PbintrayKey=BINTRAY_KEY -PdryRun=false
其中BINTRAY_USERNAME换成bintray注册的用户名,BINTRAY_KEY换成自己的APIKEY
APIKEY的查看方法如下:
回车执行命令,看到BUILD SUCCESS即上传成功
上传失败报错:
What went wrong:
Execution failed for task ':baselib:javadocRelease'.
> Javadoc generation failed. Generated Javadoc options file (useful for troubleshooting): 'D:\D\bsoft\gitlab\project\hlwyy_baselib\baselib\build\tmp\javadocRelease\javadoc.options'
解决:
项目根目录下的build文件添加代码:
//避免javadoc的检查,防止上传时报错
tasks.withType(Javadoc) {
options.addStringOption('Xdoclint:none', '-quiet')
options.addStringOption('encoding', 'UTF-8')
}
6、通过定义自己maven地址的方式引用上传的library
其实,这个时候已经可以在项目里通过定义自己maven地址的方式引用上传的Library了,可以新建一个项目试试。
在新建的项目根目录的build文件里添加你的bintray的地址:
maven地址在这里:
在需要使用baselib的模块的build文件里添加依赖:
依赖在这里:
同步以后,就可以使用baselib里的东西了。
7、提交baselib到JCenter
提交baselib到JCenter后,无需定义maven仓库地址,就可以直接compile引用baselib了。进入项目页,点击Add to JCenter
然后点击send,等待Bintray审核通过(我晚上提交,第二天就审核通过了),通过后会有右上方小邮箱按钮提示信息,这时,进入项目页信息多了个JCenter图标
这时候Library就已经成功提交到了JCenter,我们回到项目中将build中的个人maven仓库引用删掉,只保留JCenter,Sync。大功告成!!!
参考:http://www.jianshu.com/p/6a6eca8c24c4
标签:JCenter,jcenter,Library,maven,baselib,bintray,build,com 来源: https://blog.csdn.net/sqf251877543/article/details/78009922