一 新建library
二配置gradle
引入bintray-release
在项目的根目录的build.gradle添加bintray-release的classpath:classpath 'com.novoda:bintray-release:0.3.4' 如图:
配置待上传moudle的build.gralde
apply plugin: 'com.android.library'
apply plugin: 'com.novoda.bintray-release'//添加
android {
//保持不变
}
dependencies {
//保持不变
}
//添加
publish {
userOrg = 'username'//bintray.com用户名
groupId = 'com.username'//jcenter上的路径
artifactId = 'project name'//项目名称
publishVersion = '1.0.0'//版本号
desc = 'Oh hi, this is a nice description for a project, right?'//描述,不重要
website = 'https://github.com/hyman/basetools'//网站,不重要;尽量模拟github上的地址,例如我这样的;当然你有地址最好了
}
二 注册登录Jfrog bintray
个人免费账户注册 https://bintray.com/signup/oss
登录成功之后进入个人信息找到自己的key,这个后面上传要用。
上传
这里自己测的时候愚了。鸿神的是mac下的命令。。。。真尴尬
PbintrayUser 就是你注册binatray的用户名
PbintrayKey 就是个人信息里面的那个API Key
window系统
gradlew clean build bintrayUpload
-PbintrayUser=username
-PbintrayKey=xxxxxxxxxxxxxxxxxxxxxx
-PdryRun=false
mac系统
./gradlew clean build bintrayUpload
-PbintrayUser=username
-PbintrayKey=xxxxxxxxxxxxxxxxxxxxxx
-PdryRun=false
看到了这个就成功
此时只是上传到maven仓库成功,要添加依赖的话得先配置maven,xxx是你的用户名
然后添加依赖
compile 'com.lixianzhong:mylibrary:1.0.0'
你是不是想说,别人的仓库只要添加依赖就可以了啊。别急看下面
内容你自己看着输入,然后等审核通过就可以了一行代码有依赖了,审核一般隔天就好了。
失败了?
这是由于在编译过程中执行了javadoc检查,说编码不对,我们一般都utf-8,但是系统默认编码是GBK,那么我们在项目根目录的
builde.gradle
配置下
allprojects {
repositories {
google()
jcenter()
}
//配置这个
tasks.withType(Javadoc) {
options.addStringOption('Xdoclint:none', '-quiet')
options.addStringOption('encoding', 'UTF-8')
}
}
注意:
- 需要添加Javahome的环境变量
- 可能会爆javadoc的异常(可参考下面的Bug链接)
- No such property: FOR_RUNTIME for class: org.gradle.api.attributes.Usage
Sdk版本和Binatray版本号不对应。
参考链接
https://blog.csdn.net/lmj623565791/article/details/51148825 鸿洋
https://blog.csdn.net/u013231041/article/details/70174354
https://blog.csdn.net/xingshen58/article/details/51644599 bug 问题