https://bintray.com/signup/oss(个人免费版的注册地址,组织的有待研究)
classpath ‘com.novoda:bintray-release:0.8.0’
apply plugin: 'com.novoda.bintray-release'//添加
// ./gradlew clean build bintrayUpload -PbintrayUser=账号 -PbintrayKey=key -PdryRun=false -x releaseAndroidJavadocs
publish {
repoName = 'loginName'//仓库名
userOrg = 'pineclouds'//用户名
groupId = 'com.liuao.mylibrary'//生成的gradle依赖前缀。
artifactId = 'toLogin'//项目名
publishVersion = '1.0.2'//版本号
desc = '这句话是我module的描述'//描述
website = 'https://github.com/PineClouds/testGit' //引用项目的git地址
repository = 'https://github.com/PineClouds/testGit'//如果跳过第3步,则此项为必填项。如果website包含'github.com',则此项默认设置为 "${website}.git"
}
tasks.withType(Javadoc) {//防止编码问题
options.addStringOption('Xdoclint:none', '-quiet')
options.addStringOption('encoding', 'UTF-8')
options.addStringOption('charSet', 'UTF-8')
}repository
./gradlew clean build bintrayUpload -PbintrayUser=用户名 -PbintrayKey=apikey -PdryRun=false -x releaseAndroidJavadocs
aar包中所有命名方式最好带有专有的前缀或者后缀,避免与使用者代码冲突(如若发生冲突则同名会被覆盖)此条为非强制全靠个人自觉
第三方库不会打进aar包中,必须在使用的时候引入第三方库(可以配置jcenter解决该问题,以下大部分问题都是由此产生);另外aar也不会将module带进包中,在开发aar过程中不能引用module,否则在aar包中会引用module绝对路径从而导致在使用的时候找不到module
butterknife 最好使用8.4.0。高版本可能还没有兼容,似乎跟studio3.0有关(牛人自行验证),至少我使用使用8.5和8.8是无效的;aar中使用R2代替R
项目中不能删除test相关的引用,可能是lint检查的原因
平时写代码一般都不去会写单元测试,所以test相关的东西没啥用,看着别扭就直接删除了,所以这是自己挖的坑。
注意自己的用户名(上传命令需要)和仓库名(grale配置需要)区分开!
注意自己的用户名(上传命令需要)和仓库名(grale配置需要)区分开!
注意自己的用户名(上传命令需要)和仓库名(grale配置需要)区分开!
可能的错误信息:提示HTTP/1.1 401 Unauthorized [message:This resource requires authentication]
使用novoda.bintray的时候仓库名字必须为maven(我尝试修改为其他名称,找不到仓库)否则会提示BUILD FAILED 错误信息 Could not create package ‘listenergao/maven/customprogressbarlib’: HTTP/1.1 404 Not Found [message:Repo ‘android’ was not found] 仓库不存在,这里需要我们在bintray上简历仓库,name(上一条)和type写maven即可。
第一步:申请Bintray账号并获取所需信息(非常重要,仔细看步骤)
为什么要注册这个账号呢,因为jcenter()属于bintray旗下的一个仓库。
所以各位大兄弟需要一个bintray的账号撒。注册网址:https://bintray.com/
走到这里,你已经彻底的错了,除非你是企业用户或者是等待30天以后。
我可以明确的告诉你,走到这里代表你想用个人账户的邮箱已经申请成功为企业用户了(也就是说你的第一个邮箱作废了),骚年重新找个邮箱用下面的链接注册吧!至少我没有找到可以改变账户类型的办法,如果你能找到请留言告知。
个人免费版的注册地址https://bintray.com/signup/oss
注意一下邮箱问题:不能用QQ,163等,如果用的Github快速登录,也要注意邮箱问题。
个人和免费版的区别就是只有个人版的才有 “add to jcenter” 的按钮。你找不到这个按钮的话就仔细读上面这一段吧。
错误信息:
Execution failed for task ':aardemo:mavenAndroidJavadocs'.
> Javadoc generation failed. Generated Javadoc options file (useful for troubleshooting): '/.../mavenAndroidJavadocs/javadoc.options'
解决办法:
allprojects {
repositories {
google()
jcenter()
}
tasks.withType(Javadoc) {
options.addStringOption('Xdoclint:none', '-quiet')
options.addStringOption('encoding', 'UTF-8')
}
}
错误信息:
Execution failed for task ':core:lint'.
> Lint found errors in the project; aborting build.
在上传过程中执行了lint检查,所以可能会报上面的错误。解决方法就是避免lint的检查,在每个module的gradle下面就要添加如下配置:
android {
...
lintOptions {
abortOnError false
}
...
}