我在 build.gradle 文件中使用发布部分将 Android 库发布到 Artifactory:
publishing {
publications {
aar(MavenPublication) {
groupId packageName
version = libraryVersion
artifactId project.getName()
// Tell maven to prepare the generated "*.aar" file for publishing
artifact("$buildDir/outputs/aar/${project.getName()}-release.aar")
pom.withXml {
def dependencies = asNode().appendNode('dependencies')
configurations.getByName("_releaseCompile").getResolvedConfiguration().getFirstLevelModuleDependencies().each {
def dependency = dependencies.appendNode('dependency')
dependency.appendNode('groupId', it.moduleGroup)
dependency.appendNode('artifactId', it.moduleName)
dependency.appendNode('version', it.moduleVersion)
}
}
}
}
}
失败并出现以下错误:
Execution failed for task ':smartcardsdk:generatePomFileForAarPublication'.
> Could not apply withXml() to generated POM
> Configuration with name '_releaseCompile' not found.
这不是 Android v2.x 的问题。当我升级到 Android Studio v3(我猜 Gradle v3.0.0 也是)时,问题开始了。
我猜测配置不再以 _releaseCompile 名称存储。
有谁知道新的“名字”应该是什么?
谢谢。
最佳答案
刚刚想通了。您必须将其更改为:
"releaseCompileClasspath"
关于android - 将 POM 文件发布到 Artifactory 时,配置 getByName 在 gradle 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47096261/