Las dependencias de la biblioteca de Android que faltan en POM con Gradle
Estoy usando Gradle para construir un proyecto de biblioteca de Android y desplegarlo en el repositorio de Maven como un AAR.
La biblioteca tiene algunas dependencias, que deben incluirse en el POM
Conapply plugin: 'maven'
no hay archivo POM presente, solo el artefacto
Conapply plugin: 'maven-publish'
se genera un archivo POM, pero no incluye ninguna dependencia
¿Algunas ideas? ¿Esto simplemente no es compatible?
Gradle 2.2 y Android Gradle Plugin 1.1.0
Primer enfoque:
configurations {
archives {
extendsFrom configurations.default
}
}
afterEvaluate { project ->
uploadArchives {
configuration = configurations.archives
repositories {
mavenDeployer {
repository(url: "http://nexus-url") {
authentication(userName: nexusUsername, password: nexusPassword)
pom.groupId = 'com.example'
pom.version = '123-SNAPSHOT'
pom.artifactId = 'foo'
pom.packaging = 'aar'
pom.project {
artifactId = 'bar'
packaging 'aar'
description 'baz'
}
}
}
}
También lo probé sin envolverloafterEvaluate
Segundo enfoque:
publishing {
publications {
sdk(MavenPublication) {
groupId 'com.example'
artifactId 'foo'
version = "0.123-SNAPSHOT"
artifact("$buildDir/outputs/aar/app-sdk-debug.aar")
}
}
repositories {
maven {
url "http://nexus-url"
credentials {
username 'foo'
password 'bar'
}
}
}
}
Actualizar
La causa raíz del problema es que este proyecto usa sabores. Sin sabores, el pom se genera correctamente cuando se usaapply plugin: 'maven'