简单记录一下问题
注册Bintray账号
注册很简单(网页打不开的话应该是需要 ke xue shang wang),但是有一点比较坑,注册的时候需要填写邮箱,我当时注册时,QQ邮箱和网易邮箱都试过了,发现这两种邮箱都不能用于注册,其他的国内邮箱没试过,建议直接用Google邮箱。
建库
注册完成后,进入主页点击 Add New Repository 创建一个新的仓库,如下然后点击 Create 即可
用到的插件
使用
用法很简单
修改要发布库的build.gradle文件,主要添加三处代码
- 在build.gradle文件最上面添加如下代码(主要是要满足 buildscript块提到plugins块之前,否则可能会出现如下问题 ):
[ERROR] all buildscript {} blocks must appear before any plugins {} blocks in the script
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.github.panpf.bintray-publish:bintray-publish:1.0.0'
}
}
- 在build.gradle文件底部添加如下代码,引入插件依赖:
apply plugin: 'com.github.panpf.bintray-publish'
- 在上面的代码下面继续添加如下代码(根据自己实际情况填写,下面只是插件示例):
publish {
userOrg = 'panpf'
groupId = 'com.github.pnaf.bintray-publish'
artifactId = 'bintray-publish'
publishVersion = '1.0.0'
desc = 'Oh hi, this is a nice description for a project, right?'
website = 'https://github.com/panpf/bintray-publish'
repoName = '你在Bintray创建地仓库名'
}
userOrg: 填入注册的Bintray用户名即可
groupId: 用于作为组织的唯一标识,通常填入公司的倒排域名,这里我们自己做着玩,填包名就行
artifactId: 这个直接填库的名就行,要注意同一个groupId下不会存在两个相同的artifactId。
publishVersion: 表示当前开源库的版本号
desc: 对这个库的描述
website: 对应的github上库的主页地址
repoName: 这个非常重要,用上面这个插件发布的话,默认帮我们设置发布到库名为maven的库,但我们Bintray帐号中却没有创建名为maven的仓库,因此这里需要修改成自己建的库的名字
上面如果没设置repoName问题的话会出现如下ERROR: 可以看到提示是名为maven的仓库找不到
HTTP/1.1 404 Not Found [message:Repo ‘maven‘ was not found]
发布库
我的是windows系统,在Androidstudio的控制台用如下命令发布:
BINTRAY_USERNAME: 注册的Bintray用户名 BINTRAY_KEY: 自己的Bintray Api Key
gradlew clean build bintrayUpload -PbintrayUser=BINTRAY_USERNAME -PbintrayKey=BINTRAY_KEY -PdryRun=false
//linux:
./gradlew clean build bintrayUpload -PbintrayUser=BINTRAY_USERNAME -PbintrayKey=BINTRAY_KEY -PdryRun=false
下面2个图简单演示了怎么看自己的 bintray API key:
Add to Jcenter
上传成功后,在bintray的网页上就会看到我们创建的Repository下面多了一个Package,就是我们上传的这个:
点击这个package,进入我们上传库的详情页面,点击右上角的 Actions 菜单,点击 Add to Jcenter 选项,弹出的弹窗只需要填写一下对库的描述即可,然后等待Bintray审核即可:
审核一般几个小时就可以通过,服务效率很高的,通过后bintray账号会收到消息,你绑定的邮件也会有通知:
然后就可以像引用其他三方库那样 引用我们自己的库了,在自己库的详情页,有对应的引用方式: