Android Studio上传aar到JCenter简单教程

这篇文字主要讲解如何上传到JCenter中央仓库,如果想要看如何上传到私服Maven,可以参考我的上一篇文章https://blog.csdn.net/a568478312/article/details/80166281。百度的很多资料都异常繁琐,其实很多东西都不用管,这篇我将尽量写最简单的过程,适用于有一定经验的Android Studio开发者。

注册JCenter账号

https://bintray.com/signup/oss 在这个地址,我们创建一个JCenter账号,实测qq邮箱和163邮箱都特么用不了。没办法搞了个gmail最后才成功注册。
这里写图片描述

新建代码仓库并获取API key

登陆之后新建代码仓库
这里写图片描述

仓库类型以及开源许可需要注意一下,其他的随便写。
这里写图片描述

获取API key
这里写图片描述

这里写图片描述

到这里我们JCenter的设置就基本完成了。下面在Android Studio中编写gradle。

Android Studio上传aar配置

这里我们同样新建一个app和library两个module。注意在JCenter中除了要上传aar以外,还需要source , javadoc, pom几个文件。我们在项目的library模块中的build.gralde末尾添加如下代码。



//

group 'com.jabami.ty'
version '1.0.0'


//源代码打包任务
task sourcesJar(type :Jar){
    classifier 'sources' //分类器 区分其他jar包
    from android.sourceSets.main.java.srcDirs
}
//创建文档生成任务
task javadoc(type:Javadoc){
    source = android.sourceSets.main.java.srcDirs
    classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
}

task docJar(type :Jar,dependsOn:javadoc){
    classifier 'doc' //分类器 区分其他jar包
    from javadoc.destinationDir
}
//配置 工程工件 jar产出的配置
artifacts{
    archives sourcesJar
    archives docJar
}


buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.7.3'
        classpath 'com.github.dcendents:android-maven-gradle-plugin:1.5'
    }
}
apply plugin: 'com.jfrog.bintray'
apply plugin: 'com.github.dcendents.android-maven'
bintray {
    user = '568478312'  //用户名
    key = apikey  //上一步获取的Api key
    configurations = ['archives']
    pkg {
        repo = 'JabamiYu' //需要上传的仓库名
        name = 'core'  //上传的项目名
        licenses = ['Apache-2.0']
        vcsUrl = 'https://xxxx.git'//github对应地址,可以不写
        version {
            desc = 'just test'
            released  = new Date()
            vcsTag = '1.0'
            attributes = ['gradle-plugin': 'xxxxx']
        }
    }

}


install {
    repositories.mavenInstaller {
        //配置pom文件
        pom.project {
            licenses {
                license {
                    name 'The Apache Software License, Version 2.0'
                    url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
                    distribution 'repo'
                }
            }
        }
    }
}

这里只需要对应你的项目修改这几个地方:仓库名称、上传的项目名、api key、group、version、用户名。如果不额外修改pom,其他都可以不用管。另外一点需要注意 classpath ‘com.github.dcendents:android-maven-gradle-plugin:1.5’ 这个的版本。如果不选择对应的版本,很容易上传失败。下图是不同版本的Gradle对应的插件版本。
这里写图片描述
最后注意的一点就是Module的名称就是artifactId的名称,尽量不要特意修改pom的artifactId内容。

一切完成之后,我们同步Gradle,然后执行上传任务。这里需要执行的任务有如下两个,依次执行install ,bintrayUpload。

gradlew :mylibrary:install
gradlew :mylibrry:bintrayUpload

上传成功之后,我们在对应的代码仓库中可以看到内容。
这里写图片描述
接下来我们点击publish,就是最中间的那个。提示成功之后,我们进入对应的包。点击Add to JCenter进行审核。
这里写图片描述

审核成功后我们就可以直接引用依赖来使用了,在审核成功之前,我们可以这样来使用。右上角的URL是对应的代码库的地址。在app模块下的build.gradle中添加。


repositories{
    maven{
        url "https://dl.bintray.com/568478312/JabamiYu"
    }
}

dependencies {

    implementation 'com.jabami.ty:core:1.0.0'
}

审核成功之后就不需要额外添加url来引用了。如果有什么问题,可以在评论区回复。

猜你喜欢

转载自blog.csdn.net/a568478312/article/details/80167360