1.注册JFrog Bintray账号
JFrog Bintray地址:https://bintray.com/
JFrog Bintray账号注册地址:https://bintray.com/signup/oss
2.创建maven仓库
登录JFrog Bintray之后,进入账号主页,点击“Add New Repository”进入创建仓库页面,开始创建仓库。
在仓库创建页面,填写好仓库信息,完成仓库的创建。
3.在maven仓库中创建代码库对应的包
如果代码库是第一次发布,则需要在maven仓库下创建一个包,包的名称和代码库的名称须一致,代码库打包发布之后将存放在这个包目录下。
在创建包的页面完成创建:
4.在工程的build.gradle文件的dependencies中添加对bintray插件的依赖
buildscript {
apply from: 'config.gradle'
repositories {
google()
jcenter()
}
dependencies {
classpath "com.android.tools.build:gradle:${versions.gradle}"
// 目前bintray插件的最新稳定版是0.9.2
classpath "com.novoda:bintray-release:0.9.2"
}
}
5.在库对应的module的build.gradle文件中应用bintray插件
apply plugin: 'com.novoda.bintray-release'
6.在库对应的module的build.gradle文件中配置发布参数
publish闭包在build.gradle代码结构的最外层,具体可参考如下配置:
publish {
// 用户组织,个人帐号对应用户名
userOrg = 'yuriyshea'
// 组id,如'com.yuriyshea.g711:g711:0.0.7'中com.yuriyshea.g711这一部分
groupId = 'com.yuriyshea.g711'
// 类库id,需要和Bintray maven仓库中的包名称保持一致,如'com.yuriyshea.g711:g711:0.0.7'中g711这一部分
artifactId = 'g711'
// 版本号
publishVersion = '0.0.7'
// 类库描述
desc = 'A library to encode or decode g711 audio data'
// 项目地址
website = 'https://github.com/monkey1992/G711'
}
7.在工程目录下通过终端执行发布命令
gradlew clean build bintrayUpload -PbintrayUser=BINTRAY_USERNAME -PbintrayKey=BINTRAY_KEY -PdryRun=false
BINTRAY_USERNAME替换为JFrog Bintray帐号的名称,BINTRAY_KEY替换为JFrog Bintray帐号的API Key,API Key可在账号详情下面查看到。
发布成功之后,可以在Bintray maven仓库下对应的包中看到上传的代码库,如:
8.第一次发布成功之后,同步到JCenter
如果是第一次发布,还需要把库同步到JCenter,当JCenter审核通过之后,其他人才能依赖我们发布的库。
如果不是第一次发布,而是更新,则无需再次把库同步到JCenter。
同步到JCenter的操作很简单,只需要点击一下“Add to JCenter”即可执行同步,如下:
同步之后,就静静地等待jcenter审核吧,审核过程一般只需要几个小时。