Red*_*ddy 0 android gradle build.gradle android-gradle-plugin maven-publish
我正在尝试使用Gradle 插件将aar本地发布到目录。使用下面的代码,我可以发布版本(使用 PTML),但不能发布版本。/.m2maven-publishreleasedebug
我想发布一个release或一个debug带有自定义任务或通过命令行的任务。任何帮助是极大的赞赏。
publishing {
publications {
aar(MavenPublication) {
groupId 'com.sample.project'
artifactId 'SampleProject'
version '1.1.0'
artifact bundleReleaseAar
}
}
}
Run Code Online (Sandbox Code Playgroud)
您必须为您的每个buildTypes.
目前,您只有一个名为 的发布,library该发布用作工件的任务输出bundleReleaseAar。
当您想要发布版本时,debug您必须使用任务的输出bundleDebugAar。
因此你需要这样的东西:
project.afterEvaluate {
publishing {
publications {
libraryRelease(MavenPublication) {
artifact bundleReleaseAar
artifact sourceJar
groupId 'com.sample.project'
artifactId 'DummyProject'
version '1.0'
pom.withXml {
def dependenciesNode = asNode().appendNode('dependencies')
def dependencies = new ArrayList<Dependency>()
dependencies.addAll(configurations.api.allDependencies)
dependencies.addAll(configurations.implementation.allDependencies)
dependencies.each {
if (it.group != null && (it.name != null || "unspecified".equals(it.name)) && it.version != null) {
def dependencyNode = dependenciesNode.appendNode('dependency')
dependencyNode.appendNode('groupId', it.group)
dependencyNode.appendNode('artifactId', it.name)
dependencyNode.appendNode('version', it.version)
}
}
}
}
libraryDebug(MavenPublication) {
artifact bundleDebugAar
artifact sourceJar
groupId 'com.sample.project'
artifactId 'DummyProject'
version '1.0'
pom.withXml {
def dependenciesNode = asNode().appendNode('dependencies')
def dependencies = new ArrayList<Dependency>()
dependencies.addAll(configurations.api.allDependencies)
dependencies.addAll(configurations.implementation.allDependencies)
dependencies.each {
if (it.group != null && (it.name != null || "unspecified".equals(it.name)) && it.version != null) {
def dependencyNode = dependenciesNode.appendNode('dependency')
dependencyNode.appendNode('groupId', it.group)
dependencyNode.appendNode('artifactId', it.name)
dependencyNode.appendNode('version', it.version)
}
}
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
这将创建两个任务publishLibraryReleaseToLocalMaven和publishLibraryDebugToLocalMaven。您可以根据您要发布的类型来运行它们。
| 归档时间: |
|
| 查看次数: |
3138 次 |
| 最近记录: |