将module上传到Jcenter并使用

导言

简单说就一句话

要直接通过

compile 'com.github.fanjinhao:pull-refresh-layout:1.0.0'

这种方式来方便使用一些类库

as操作

首先到整个项目的gradle文件下:

将module上传到Jcenter并使用_第1张图片
image.png

然后添加以下配置

将module上传到Jcenter并使用_第2张图片
image.png

其中

(1)

classpath 'com.novoda:bintray-release:0.4.0'

为一个方便上传到bintray的插件

(2)

tasks.withType(Javadoc) {

        options.addStringOption('Xdoclint:none', '-quiet')

        options.addStringOption('encoding', 'UTF-8')

    }

通过当前方式来避免乱码等问题

接着到要上传的module的gradle中


将module上传到Jcenter并使用_第3张图片
image.png

接着配置一些选项

将module上传到Jcenter并使用_第4张图片
image.png

将module上传到Jcenter并使用_第5张图片
image.png

注意几个红框部分:

(1)

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

使用当前插件来上传到bintray

(2)

lintOptions {

        abortOnError false

    }

防止编译的时候lint检查报错

(3)

publish {

    userOrg = '1736880019'//bintray.com用户名

    groupId = 'com.github.fanjinhao'//jcenter上的路径

    artifactId = 'pull-refresh-layout'//项目名称

    publishVersion = '1.0.0'//版本号

    desc = 'Oh hi, this is a nice description for a project, right?'//描述,不重要

    website = 'https://github.com/dda135/PullRefreshLayout'//网站,不重要;尽量模拟github上的地址,例如我这样的;当然你有地址最好了

    repoName = 'android'//bintray中创建的repo名称

}

这里就是配置上传到jcenter之后的细节,上面注释写的很清楚了

其中注意

compile 'com.github.fanjinhao:pull-refresh-layout:1.0.0'

实际上就是对应

compile 'groupId:artifactId:publishVersion'

最后就是通过命令上传到bintray

将module上传到Jcenter并使用_第6张图片
image.png

首先到terminal下面,然后输入对应命令

gradlew clean build bintrayUpload -PbintrayUser=[你在bintray中注册的账号] -PbintrayKey=[你在bintray中注册的账号所分配的APIKEY] -PdryRun=false

之后只要等待build successfully就表示上传成功

bintray操作

上面提到了bintray的账号等信息,这里来看一下具体的操作

首先登录https://bintray.com/

然后进行注册

将module上传到Jcenter并使用_第7张图片
image.png

实际上有两种模式,选择open source account模式

然后按照注册流程注册即可,其中注意邮箱不支持qq.com,如果要使用qq邮箱,那么可以在qq邮箱里面

image.png
image.png
将module上传到Jcenter并使用_第8张图片
image.png

简单说就是使用foxmail的帐号就好了

注册完成之后登陆

接着创建一个仓库

将module上传到Jcenter并使用_第9张图片
image.png

然后在创建页面选择Type为maven,Licenses为apache2.0协议,其他自己输入即可

将module上传到Jcenter并使用_第10张图片
image.png

创建完成之后就会有一个仓库

回到as中的配置

publish {

    userOrg = '1736880019'//bintray.com用户名

    groupId = 'com.github.fanjinhao'//jcenter上的路径

    artifactId = 'pull-refresh-layout'//项目名称

    publishVersion = '1.0.0'//版本号

    desc = 'Oh hi, this is a nice description for a project, right?'//描述,不重要

    website = 'https://github.com/dda135/PullRefreshLayout'//网站,不重要;尽量模拟github上的地址,例如我这样的;当然你有地址最好了

    repoName = 'android'//bintray中创建的repo名称

}

其中repoName对应的就是你创建的仓库的名称

接着就可以按照上面说的as操作流程来进行上传,等上传成功之后

将module上传到Jcenter并使用_第11张图片
image.png

点击对应的仓库名字,进入仓库主页

将module上传到Jcenter并使用_第12张图片
image.png

可以看到之前上传成功的module就是这样的一张卡片,点击卡片

此时虽然代码已经上到bintray,但是还无法直接访问,此时进行最后一步

将module上传到Jcenter并使用_第13张图片
image.png

点击add to jcenter,然后填写信息去审核,等待审核完成之后既可以使用

上面提到了APIKEY,看一下它的位置:

点击右上角帐号信息里面的Edit Profile

将module上传到Jcenter并使用_第14张图片
image.png

接着就可以看到左边有API Key

将module上传到Jcenter并使用_第15张图片
image.png

点进去复制出来就好了

升级

一般的类库都会有几次的升级

比方说1.0.0->1.0.1->1.0.2之类的

(1)如果1.0.0中add to jcenter审核通过了,那么后续不需要再次审核

(2)升级的时候修改module的gradle的publishVersion,然后直接上传就好

(3)如果要修改groupId或者artifactId,建议重新上传一个package,而不是直接混用之前的package,我试过没有效果,虽然代码可以上传到bintray

结语

总的来说,学会这个就是为了更好的方便使用类库
审核的时候因为存在时差,所以有时候没有那么快,这个也是可以理解的

你可能感兴趣的:(将module上传到Jcenter并使用)