项目文件夹选择我们克隆下来的文件夹
成功后的Project 结构
在新创建的库中编写代码,并在app模块的gradle下添加下面代码引入库:
compile project(':yourmodulename') //冒号后是你的新module的名称
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.3'
//添加这一行
classpath 'com.novoda:bintray-release:0.3.4'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
然后在library模块的gradle里加入以下代码:
apply plugin: 'com.novoda.bintray-release'//添加这一行
...
publish {
userOrg = 'username/organization'//username 或者 organization 的名称,个人用户是 username,企业用户是 Organization Name
groupId = 'YourPkgName'//jcenter上的路径,如com.ezbuy.XXX
artifactId = 'packageName'//项目名称与bintray上的package名称一致
publishVersion = 'v1.0.0'//版本号
}
如果你用的企业版的bintray,userOrg填的是你的Organization Name,如果你是用的个人版的bintray则是用自己的用户名(被这个大坑坑了半天),如何区分企业还是个人用户我将在后面讲到
./gradlew clean build bintrayUpload -PbintrayUser=berosy -PbintrayKey=******************** -PdryRun=false
这里的PbintrayUser是你的bintray用户名,PbintrayKey是bintray Api key,从编辑个人信息处获取:
这边要等审核,审核过了我们就可以在其他项目里加入我们的依赖库了
由企业登录入口这个登录界面登录或者注册的就是企业用户,由个人登录入口这个登录界面登录注册的是个人用户,还有进去bintray主界面后,企业用户不能直接添加仓库,必须在组织(Organization)下添加仓库,个人用户可以直接添加仓库。一开始我直接注册登录到企业用户,结果后面一大堆问题,坑哭~
上传库至bintray时gradle报错:
Could not create package 'berosy/maven/ezrecyclerview': HTTP/1.1 404 Not Found [message:Repo 'maven' was not found]
原因可能有两种:
- 在bintray设置仓库名字时设置的不是’maven’,而上传library时默认上传至maven,将bintray页面的仓库名字设置为maven就行
- userOrg填错了,如果是企业用户是组织名称,如果是个人用户是你的用户名!
Could not create package 'berosy/maven/ezrecyclerview': HTTP/1.1 400 Bad Request [message:Please enter a valid VCS URL for your OSS package.]
主要是package信息不完整,在bintray设置页面新建了package,填完整信息就好
一定是用了企业版的试用版!一定是用了企业版的试用版!一定是用了企业版的试用版!
换成个人版!
错误信息:
Could not create package '/maven/': HTTP/1.1 401 Unauthorized [message:This resource requires authentication]
一定是username或者key填错了!一定是username或者key填错了!一定是username或者key填错了!
仔细检查一遍!
以上的代码都上传至我的github,可以前往参考:https://github.com/Berosy/EzRecyclerView