前言:
将自己编写的功能库开源出来,方便他人交流,查找问题,同时,gradle 依赖方式也快捷使用。
1. 注册账户
点击进入bintray注册页面。
输入相关信息,如下图所示:
创建成功后,出现等待激活页面,如下图所示:
打开谷歌邮箱,点击激活的邮件,如下所示:
2. 创建maven仓库
查看对应的仓库是否存在,输入https://bintray.com/用户名/仓库名
,这里,个人输入https://bintray.com/hexingen/maven
,发现该代码仓库不存在,如下所示:
因此,需要手动创建该仓库。登入账号后,进入edit your profile页面,点击打开Repositories,如下所示:
点击new repository,创建相应的代码库,如下图所示:
3. 获取到api key:
登录后,点击右上角头像初的edit profile,进入编辑页面,如下图所示:
点击API Key,就可以看到你一段key字符串,把这个copy下放一边,一会上传要用。
1. 在项目的build.gradle中添加:
buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.1.2'
//修改此处版本号为 0.8.0---修改之前是0.3.4(AS版本3.1.4改为0.8.0)
classpath 'com.novoda:bintray-release:0.8.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
google()
jcenter()
}
解决编码GBK的不可映射字符,中文注释问题
tasks.withType(Javadoc) {
options{
encoding "UTF-8"
charSet 'UTF-8'
links "http://docs.oracle.com/javase/7/docs/api"
}
}
}
重点:这里存在一些坑,不同的studio版本需要选择不同的bintray-release版本
2. 在Library Module的builde.gradle中添加:
添加bintray插件,和配置bintray的相关信息。
apply plugin: 'com.novoda.bintray-release'//添加
android {
//取消lint检查
lintOptions {
abortOnError false
}
}
//添加
publish {
userOrg = 'hexingen'//bintray.com用户名
groupId = 'com.xingen'//jcenter上的路径
artifactId = 'androidjslib'//项目名称
publishVersion = '1.0.0'//版本号
desc = 'Oh hi, this is a nice description for a project, right?'//描述,不重要
website = 'https://github.com/13767004362/WebViewLib'//网站,github上的地址
}
3. terminal窗口中执行命令行:
执行上传操作,输入相关命令行,运行等待上传结果,如下图所示:
gradlew clean build bintrayUpload
-PbintrayUser=hexingen
-PbintrayKey=xxxxxxxxxxxxxxxxxxxxxx
-PdryRun=false
解释说明:
3.点击add to Jecenter,跳转提交信息页面,如下所示:
4.输入简单信息,提交完信息后,等待审核通过。等待几小时后,通过审核,会受到消息,如下图所示:
最后一步,在gradle中进行依赖,方便快捷使用该库了,如下图所示:
1. 提交完项目后,没有Add To jcenter
按钮
注册或者登入账号,应该选择For Open Source account
方式登录
2. 遇到HTTP/1.1 404 Not Found [message:Repo 'maven' was not found]
Execution failed for task ':androidjslib:bintrayUpload'.
> Could not create package 'hexingen/maven/androidjslib': HTTP/1.1 404 Not Found [message:Repo 'maven' was not found]
查询才知道,原来需要自己去创建maven仓库。
解决方式:手动创建maven仓库
3. androidstudio3.0 遇到Unable to load class ‘org.gradle.api.internal.component.Usage’
问题。
解决方式: 来源网上答案
buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.1.2'
//修改此处版本号为 0.5.0---修改之前是0.3.4(AS版本3.1.4改为0.8.0)
classpath 'com.novoda:bintray-release:0.5'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
4. 遇到编码GBK的不可映射字符
解决方式:
//解决编码GBK的不可映射字符
allprojects {
tasks.withType(Javadoc) {
options{
encoding "UTF-8"
charSet 'UTF-8'
links "http://docs.oracle.com/javase/7/docs/api"
}
}
}
5.遇上Execution failed for task ':core:lint'.
关闭lint检查
解决方式:
lintOptions {
abortOnError false
}
资源参考:
https://blog.csdn.net/lmj623565791/article/details/51148825
https://github.com/novoda/bintray-release
https://github.com/13767004362/WebViewLib