上传Jcenter

0x00 前言

Jcenter提供了一个方便使用自己开源库的一个平台 在Android中使用 complie引用即可,目前很多文章都是通过gradle-bintray-plugin这个插件,不过bintray-release这个插件更加人性化,本篇将记录使用这个插件如何上传到Jcenter上

0x01 注册bintray.com账号

  • Step 1

官网注册账号 https://bintray.com,切记点击右边的For an Open Source Account,个人版本
(企业版 加入或者创建组织才可以建立自己的仓库,比较麻烦)

注册

  • Step 2

注册完之后 进入 Edit profile 查看自己的APIKey,这是上传时候需要用到

0x02 项目配置

  • 根gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41

buildscript {
repositories {
jcenter()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.1'

classpath 'com.novoda:bintray-release:0.8.0'//添加
}
}

allprojects {
repositories {
jcenter()
maven{url "https://jitpack.io"}
mavenCentral()
}
tasks.withType(Javadoc) {
options.addStringOption('Xdoclint:none', '-quiet')
options.addStringOption('encoding', 'UTF-8')
}
}


task clean(type: Delete) {
delete rootProject.buildDir
}


//统一声明配置
ext {
userOrg = 'androidxsf' //bintray.com用户名
groupId = 'com.xsfdev' //jcenter上的路径
uploadName = 'android-basiclib-apifactory'
publishVersion = '1.0.0' //版本号
desc = 'Request code can be generated automatically' //描述
website = 'https://github.com/HouXiaohu/androidbasiclib' //网站,不重要;尽量模拟github上的地址
licences = ['Apache-2.0'] //开源协议
}
  • 需要上传的各个Module中引入
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

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


//添加
publish {
artifactId = 'complexcriptdsl'
userOrg = rootProject.userOrg
groupId = rootProject.groupId
uploadName = rootProject.uploadName
publishVersion = rootProject.publishVersion
desc = rootProject.description
website = rootProject.website
licences = rootProject.licences
}

0x03 执行上传

./gradlew bintrayUpload -PbintrayUser = androidxsf(你的用户名) -PbintrayKey = 1f8b6d3da641fe0f34d531c1811774c***(你的APIKey) -PdryRun = false

此时可以看到我们上传的项目了,你可以点击进去看该库的一些信息,但是注意此时还不能够直接被引用。

点击进去该库,按照下图,点击Add To jcenter

0x04 其他

你需要等待bintray的工作人员审核,审核通过会给你发送站内Message,并且Add to Jcenter那个按钮就小时了,此外你还可以根据你上传的groupId,访问该网站https://jcenter.bintray.com/你的groupId例如https://jcenter.bintray.com/com/com.xsfdev/

总结

最后总结下整个过程,其实非常简单:

  • 申请账号
  • 引入bintray-release,在需要上传的module里面填写相关publish的信息
  • 调用上传的命令
  • Add to Jcenter提交审核
0%