jcenter兼容maven gradle lvy等形式 方便我们项目的开源工作
注册账号
https://bintray.com/这边有一个要特别注意的点,注册的时候点opensource那个!!不然是企业相关的,没有办法建立自己的代码仓,当时被这个坑了很久。注册的账号一般国内的qq邮箱什么的不能使用,建议使用gmail
获取你的API Key
image编辑你当前library文件的build.gradle
1.根节点添加插件
apply plugin: 'com.github.dcendents.android-maven'
apply plugin: 'com.jfrog.bintray'
2.根节点添加版本号
version = "0.1" //修改后重新上传的标识号
3.若使用非GBK格式编码,添加格式兼容
allprojects {
repositories {
google()
jcenter()
mavenLocal()
maven {
url "${project.rootDir}/../../libraries/m2repository"
}
flatDir {
dirs 'libs'
}
}
//此处添加的UTF-8格式
tasks.withType(Javadoc) {
options.addStringOption('Xdoclint:none', '-quiet')
options.addStringOption('encoding', 'UTF-8')
}
}
4.根节点加aar&&jcenter相关
def siteUrl = '' //此处为github项目地址
def gitUrl = ''//此处为git地址 ******.git
group = "" //唯一区别码 一般可以使用packageId
install {
repositories.mavenInstaller {
// This generates POM.xml with proper parameters
pom {
project {
packaging 'aar'
name '' //项目名称
url siteUrl
licenses {
license {
name 'The Apache Software License, Version 2.0'
url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
}
}
developers {
developer {
id '' //jcenter id
name '' //jcenter name
email '' //jcenter mail
}
}
scm {
connection gitUrl
developerConnection gitUrl
url siteUrl
}
}
}
}
}
task sourcesJar(type: Jar) {
from android.sourceSets.main.java.srcDirs
classifier = 'sources'
}
task javadoc(type: Javadoc) {
source = android.sourceSets.main.java.srcDirs
classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
}
task javadocJar(type: Jar, dependsOn: javadoc) {
classifier = 'javadoc'
from javadoc.destinationDir
}
artifacts {
archives javadocJar
archives sourcesJar
}
//local.properties 内添加 bintray.user bintray.apikey
Properties properties = new Properties()
boolean isHasFile = false
if (project.rootProject.file('local.properties') != null){
isHasFile = true
properties.load(project.rootProject.file('local.properties').newDataInputStream())
}
bintray {
user = isHasFile ? properties.getProperty("bintray.user") : System.getenv("bintray.user")
key = isHasFile ? properties.getProperty("bintray.apikey") : System.getenv("bintray.apikey")
configurations = ['archives']
pkg {
repo = "" //jcenter仓库名 此处注意要现在jcenter创建这个名称的repo 不然上传报错
name = "" //jcenter 项目名
websiteUrl = siteUrl
vcsUrl = gitUrl
licenses = ["Apache-2.0"]
publish = true
}
}
5.执行上传
./gradew javadocJar
./gradew sourcesJar
./gradew install
./gradew bintrayUpload
网友评论