jcenter快速发布项目简单粗暴
为什么要把项目发布到jcenter呢?因为部分常用的功能模块,如果能够做到一行代码引入到Gradle岂不是很酷?效率大大提升,而不需要到处找代码,复制粘贴,就像这样
implementation 'com.crearo:mcu:1.0.0'
注意:不建议重复造轮子,毕竟轮子越多,你集成的风险越高,只建议封装自己常用的工具库发布到jcenter
在发布自己的项目到jcenter,我参考过很多篇blog,亲身体验了感觉实在是过于复杂了,而且很大概率不是build不成功,就是发布上传不成功。我们现在介绍一下大部分blog发布项目到jcenter方式
方式一:bintray-release
我想很多人都想以最简单的方式来上传自己的代码,我也同样如此!于是看了Android 快速发布开源项目到jcente的博客,使用bintray-release 0.9.2
这个插件确实配置简单,而且最后只需要执行一段gradlew代码即可,这里不要分行。
./gradlew clean build bintrayUpload -PbintrayUser=BINTRAY_USERNAME -PbintrayKey=BINTRAY_KEY -PdryRun=false
在使用bintray-release过程中,我使用的是AndroidStudio4.1.X gradle-6.5 ,和很多历史blog写的有所出入,所以在上传项目到jcenter,整个过程是非常不顺利。
问题一
bintray-release 不支持gradle6.5,提示版本太高。
问题二
在使用bintray-release上传项目的时候,gradle编译项目不通过
还遇到很多问题,就不在这里一一记录了。
方式二:使用原生AndroidStudio 配置上传到jcenter
这个方式我大概在2017年的时候,用过,其配置向只能用非常繁多,少了某一步都会导致失败,整个过程比集成某些三方SDK还复杂。现在我已经记不清具体步骤了。
方式三:手动上传,配置简单(重点)
大概意思就是,我们把我们需要上传的Model手动打包成zip包,然后上传到https://bintray.com平台
首先还是要去注册https://bintray.com账号,自行百度,这里就不说了。
第一步
在我们Model的build.gradle目录下配置打包arr相关的信息
ext {
PUBLISH_GROUP_ID = 'com.crearo' //分组名称
PUBLISH_ARTIFACT_ID = 'mpu' //项目名称
PUBLISH_VERSION = '1.0.0' //版本
}
apply from: 'https://raw.githubusercontent.com/blundell/release-android-library/master/android-release-aar.gradle'
第二步
在当前Model下运行命令:(Mac平台)
win去掉./
./gradlew clean build generateRelease
如果build没有出现错误,如下图所示
等build完成在当前Model下的build根目录下就有一个zip文件,如下图所示
第三步
在bintray要手动创建一个仓库(方式一、二是自动创建仓库),如图所示:
建立仓库一并建立一个包,如图所示:
新建一个版本,如图所示:
版本新建完成,需要发布
第四步
上传zip包,把刚才build生成的zip包上传到刚新建的版本目录下
选中zip包
第五步
Add to JCenter这是最重要的一步,此时,你可以点击Add to JCenter,注意在提交的时候,在输入框一定要写内容,不能不写。
等待审核通过,即可一行代码引入到项目中。
至此,教程结束,记录下来,有错误请指正,这是目前我认为最简单的方式上传到JCenter。