首先我们看看写的gradle代码的含义:
compile 'com.first:FirstLibrary:1.0.0'
其组成是这样的:
GROUP_ID:ARTIFACT_ID:VERSION
GROUP_ID指的是com.first,类似于包名;ARTIFACT_ID指的是FirstLibrary,类似于类库的名称;VERSION是1.0.0,也就是版本号。
在bintray.com上面注册一个账号,然后登录进去。
注册登录地址:https://bintray.com/login?forwardedFrom=%2Flogin
截止到现在 Bintrary上面环境已经完成了,下面说下如何将一个项目中的库文件上传到jcenter上
dependencies {
classpath 'com.android.tools.build:gradle:3.0.1'
classpath 'com.novoda:bintray-release:0.5.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
apply plugin: 'com.android.library'
apply plugin: 'com.novoda.bintray-release'
publish {
repoName = 'MyMaven'//远程仓库名字,不指明,默认是上传到maven
userOrg = 'developwb'//bintray.com用户名
groupId = 'com.first'//jcenter上的路径,bintray上创建Package时填写的Version control项
artifactId = 'FirstLibrary'//项目名称,bintray上创建Package时填写的Name项
publishVersion = '1.0.0'//版本号
desc = '描述'//描述,不重要
website = '111'//网站,最好有,不重要
}
android {
compileSdkVersion 26
defaultConfig {
现在PbintrayUser和PbintrayKey我们都知道了,放到上面的命令中,对号入座,然后点击回车。。。坐等上传成功
看到下图中的successful就表示上传成功了。
·这时候我们需要在下面填写审核描述(乱填都行不能不填,不填可能会审核失败!)(如下图↓↓↓)
·填写完成直接Send,一般一天之后就会审核通过,通过后项目的右下角的Add to JCenter 按钮就会消失!
审核通过后就可以引用了
compile 'com.first:FirstLibrary:1.0.0'
·下面我们来看看上传过程中的常见错误(如果你成功了可以不用看下面):
(1).HTTP/1.1 404 Not Found [message:Repo ‘MyMaven’ was not found]
找不到Maven库,可能是你没有创建,或者是你repoName的值跟你创建的仓库名字不一样,还有可能是你的userOrg也没有写对!
(2).HTTP/1.1 400 Bad Request [message:Please enter a valid VCS URL for your OSS package.]
找不到包,在对应的Maven库下没有创建对应的包,或者是你artifactId的值跟你创建的包名字不一样!
(3)有可能出现乱码问题
解决问题:在项目根目录gradle文件中添加以下代码
allprojects {
tasks.withType(Javadoc) {
options{
encoding "UTF-8"
charSet 'UTF-8'
links "http://docs.oracle.com/javase/7/docs/api"
}
}
}