Gradle7.0及以上版本的使用
1、项目根目录gradle.properties下配置maven仓库信息
################## nexus maven ####################
MAVEN_GROUP_URL = maven仓库地址
MAVEN_URL = maven仓库地址(release版本)
MAVEN_SNAPSHOT_URL = maven仓库地址(测试版本)
#用户名
NEXUS_USERNAME=admin
#账户密码
NEXUS_PASSWORD=123456
# groupid
GROUP_ID = 分组信息
# type
TYPE = aar
# description
DESCRIPTION = dependences lib
################## nexus maven ####################
2、module模块build.gradle下配置项目信息
//打包发布
apply plugin: 'maven-publish'
//打包main目录下代码和资源的 task
task androidSourcesJar(type: Jar) {
classifier = 'sources'
from android.sourceSets.main.java.srcDirs
}
afterEvaluate {
publishing {
publications {
// Creates a Maven publication called "release".
release(MavenPublication) {
// Applies the component for the release build variant.
from components.release
groupId = GROUP_ID
artifactId = '分组名称'
version = '1.0.0'
}
// Creates a Maven publication called “debug”.
debug(MavenPublication) {
// Applies the component for the debug build variant.
from components.debug
groupId = GROUP_ID
artifactId = '分组名称'
version = '1.0.0-SNAPSHOT'
}
}
repositories {
maven {
name = "nexus"
allowInsecureProtocol true
url MAVEN_GROUP_URL
credentials {
username = NEXUS_USERNAME
password = NEXUS_PASSWORD
}
def releasesRepoUrl = MAVEN_URL
def snapshotsRepoUrl = MAVEN_SNAPSHOT_URL
url = version.endsWith('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl
}
}
}
}
3、maven-publish插件可以以模块进行独立发布
参考:
Android官方介绍:maven-publish
Gradle官方介绍:maven-publish