#使用bintray-release 上传Jcenter 所踩过的坑#
2017-05-24 15:25
218 查看
写在开始
最近因为项目的需求,需要用到一些特殊的控件。在浏览查找了github之后,感觉比较纠结,一些小的dome,可定制度低,实现的效果和我不太一样。一些大公司的项目又感觉比较臃肿,配置起来比较复杂。所以考虑自己自定义一些控件,写完了之后,想把项目开源给大家交流一下,所以使用bintray-release上传bintray,但是没想到中间遇到很多坑,所以记录分享一下。接下来分几个点,一些遇到的问题会穿插在里面
注册账号创建仓库
配置bintray-release
上传
1. 注册
其实注册这个步骤是最最最坑爹的,在网上绝大部分的教程都一带而过,而我就是因为这个问题反复纠结了1天。首先 : 打开 bintray官网
首先看到这个
看见这么可爱的绿绿的按钮是不是很想点击注册??
不不不不不!!!!!!!
bintary账号分为普通账号和开源账号,果然点击左边的绿色按钮,你注册的是普通账号,你就必须要加入或者创建组织才可以建立自己的仓库,关键是如果你点错了,你还删不了,非常麻烦。
所以,千万要点击右边的For an Open Source Account Sign Up Here.
接下来,到了
到了这里,什么选择就你喜欢了。
但是要注意一点,不管你选择新注册还是用第三方登录,如果你的邮箱是QQ或者163,都是不行的,到时候邮箱一栏会变红高亮,但是不会有任何提示,很坑爹,所以用gmail或者outlook来注册比较保险。
登录进去之后,点击头像,点击edit profile 如果打开的界面,左边一栏中有repositories 则说明,你的账号没错,如果没有,只有五个选项,则你在注册的时候点错了,注册的是普通的账号。
2. 创建仓库
现在就可以点击repositories 来创建仓库,类型选择maven,其他自己决定,创建好了之后,在里面可以创建一个packge。这一步一般没有什么问题
3. 配置bintray-release
不说废话 直接上bintray-release github地址dependencies { classpath 'com.android.tools.build:gradle:2.3.2' classpath 'com.novoda:bintray-release:0.5.0' }
这里注意一点,bintray-release不支持 gradle 3.4以下的版本,必须gradle 3.4以上
然后在你要上传的module里面的gradle里面添加
apply plugin: 'com.novoda.bintray-release'
然后在最外层 配置
publish { userOrg = 'bintray.com用户名' groupId = 'com.xxxxx'//jcenter上的路径,你喜欢 artifactId = '仓库里面的名称Package' publishVersion = '1.0.1'//版本号 desc = 'simple,bottomdialog'//描述,随便 website = 'https://github.com/ZENGYANYAN/YanLibrary'//网站,随便; }
上面是大多数教程的写法,但是有可能会报
HTTP/1.1 404 Not Found [message:Repo 'maven' was not found]
的错误
因为他默认的仓库名字为maven
有相关文章是通过手动建立一个叫maven的仓库来解决
类似这位大神
但是对于我有强迫症的来说,不可接受啊
尝试过后
publish应该是这样的
publish { userOrg = 'bintray.com用户名' groupId = 'com.xxxxx'//jcenter上的路径,你喜欢 artifactId = '仓库里面的名称Package' repoName='仓库名' publishVersion = '1.0.1'//版本号 desc = 'simple,bottomdialog'//描述,随便 website = 'https://github.com/ZENGYANYAN/YanLibrary'//网站,随便; }
这样就很完美了
4.上传
开始上传首先要得到key
edit profile里面有一个Api Key
copy下来就好
打开Terminal 输入
/gradlew clean build bintrayUpload -PbintrayUser=BINTRAY_USERNAME -PbintrayKey=BINTRAY_KEY -PdryRun=false
就开始编译,可能会有几个问题
- gradle 版本问题 上文已解决
HTTP/1.1 404 Not Found [message:Repo ‘maven’ was not found] 已解决
GBK编码问题,javadoc编码问题
在项目gradle里面加入
tasks.withType(Javadoc) { options { encoding "UTF-8" charSet 'UTF-8' links "http://docs.oracle.com/javase/7/docs/api" } }
或者用参考以为群上大神的项目做法另一位大神
解决这些问题后,就会成功上传了。
在你的仓库里就会找到你上传的package,
点击右下角的add to Jcenter 等待审核
审核结束,就发布成功了。
最后
这就是全部感谢hongyang大神的博客
还有刚刚我引用过的各位大佬的资料
有什么说得不对的地方,
还请各位大佬多多指教
相关文章推荐
- 使用bintray_release插件轻松上传库到Jcenter
- Android简单项目上传到jcenter(基于bintray-release),不涉及混淆等
- 使用bintray-release发布项目到jcenter bintray | 新的解决javadoc编码错误的方法
- 利用bintray-release插件上传到jcenter
- Android 使用bintray将本地库上传到JCenter做maven依赖库
- 使用bintray-release工具上传gradle项目至bintray.com
- Gradle之使用Android Studio 编写Gradle插件并上传Library到JCenter
- 利用bintray-release插件上传到Bintray- HTTP/1.1 404 Not Found [message:Repo 'maven' was not found]问题解决
- 使用gradle上传项目到jcenter
- 利用bintray-release插件上传到Bintray- HTTP/1.1 404 Not Found [message:Repo 'maven' was not found]问题解决
- Android Library上传到GitHub并一键发布到Bintray或JCenter
- 使用Android Studio发布开源库到Bintray/Jcenter(新)
- 新版Bintray-极简上传Library到JCenter
- android使用bintray发布aar到jcenter
- 新版Bintray-极简上传Library到JCenter,可上传自定义maven仓库
- Android Studio使用Gradle上传到jCenter
- android使用bintray发布aar到jcenter
- 利用bintray-release插件上传到Bintray- HTTP/1.1 404 Not Found [message:Repo 'maven' was not found]问题解决
- PGP 中文化终于Release了。也完成了PGP 新手使用指南。
- 使用HttpWebRequest向网站模拟上传数据-(摘自greystar的专栏)