Decided to import BOM under dependencyManagement in generated pom.xml
google(MavenPublication) {
groupId 'group'
artifactId 'artifact'
version android.defaultConfig.versionName
artifact(sourceJar)
artifact("$buildDir/outputs/aar/my-release.aar") {
extension 'aar'
}
pom.withXml {
def dependenciesNode = asNode().appendNode('dependencies')
def dependenciesManagementNode = asNode().appendNode('dependencyManagement').appendNode('dependencies')
configurations.implementation.allDependencies.each {
if (it.group != null && (it.name != null || "unspecified" == it.name)) {
if (it.name.endsWith("-bom")) {
def dependencyNode = dependenciesManagementNode.appendNode('dependency')
dependencyNode.appendNode('groupId', it.group)
dependencyNode.appendNode('artifactId', it.name)
dependencyNode.appendNode('version', it.version)
dependencyNode.appendNode('scope', "import")
dependencyNode.appendNode('type', "pom")
} else {
def dependencyNode = dependenciesNode.appendNode('dependency')
dependencyNode.appendNode('groupId', it.group)
dependencyNode.appendNode('artifactId', it.name)
if (it.version != null) {
dependencyNode.appendNode('version', it.version)
}
}
}
}
}
}
CLICK HERE to find out more related problems solutions.