Publicar archivo .aar con javadocs adjunto en repo artifactory

Estoy tratando de publicar un AAR con el archivo javadoc a mi repo de maven a través de gradl artifactory puglin.

El archivo aar está haciendo uploaded con éxito, pero el javadoc no lo hacen. ¿Qué script puedo usar para subir mis javadocs ?.

Este es mi código build.gradle

apply plugin: 'com.android.library' apply plugin: 'com.jfrog.artifactory' apply plugin: 'maven-publish' def packageName = 'br.com.lexsis.libtest' def libraryVersion = '0.0.1-SNAPSHOT' android { compileSdkVersion 23 buildToolsVersion "23.0.0" defaultConfig { minSdkVersion 15 targetSdkVersion 23 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:23.0.0' } 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) } } } } } artifactory { contextUrl = "${artifactory_contextUrl}" publish { repository { // The Artifactory repository key to publish to repoKey = libraryVersion.endsWith('SNAPSHOT') ? 'libs-snapshot-local' : 'libs-release-local' username = "${artifactory_user}" password = "${artifactory_password}" } defaults { // Tell the Artifactory Plugin which artifacts should be published to Artifactory. publications('aar') publishArtifacts = true // Properties to be attached to the published artifacts. properties = ['qa.level': 'basic', 'dev.team': 'core'] // Publish generated POM files to Artifactory (true by default) publishPom = true } } } task androidJavadocs(type: Javadoc) { source = android.sourceSets.main.java.srcDirs classpath += project.files(android.getBootClasspath().join(File.pathSeparator)) } task androidJavadocsJar(type: Jar, dependsOn: androidJavadocs) { classifier = 'javadoc' from androidJavadocs.destinationDir } task androidSourcesJar(type: Jar) { classifier = 'sources' from android.sourceSets.main.java.srcDirs } artifacts { archives androidSourcesJar archives androidJavadocsJar } 

Su publicación sólo incluye el archivo aar:

artifact("$buildDir/outputs/aar/${project.getName()}-release.aar")

Añadir otro artefacto: la salida de la tarea androidJavadocsJar :

artifact androidJavadocsJar

Repita para fuentes jar, si lo desea.

Esto funciona para mí.

 apply plugin: 'com.android.library' apply plugin: 'com.jfrog.artifactory' apply plugin: 'maven-publish' def packageName = 'br.com.lexsis.libtest' def libraryVersion = '0.0.1-SNAPSHOT' android { compileSdkVersion 23 buildToolsVersion "23.0.0" defaultConfig { minSdkVersion 15 targetSdkVersion 23 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:23.0.0' } 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") artifact androidJavadocsJar 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) } } } } } artifactory { contextUrl = "${artifactory_contextUrl}" publish { repository { // The Artifactory repository key to publish to repoKey = libraryVersion.endsWith('SNAPSHOT') ? 'libs-snapshot-local' : 'libs-release-local' username = "${artifactory_user}" password = "${artifactory_password}" } defaults { // Tell the Artifactory Plugin which artifacts should be published to Artifactory. publications('aar') publishArtifacts = true // Properties to be attached to the published artifacts. properties = ['qa.level': 'basic', 'dev.team': 'core'] // Publish generated POM files to Artifactory (true by default) publishPom = true } } } task androidJavadocs(type: Javadoc) { source = android.sourceSets.main.java.srcDirs classpath += project.files(android.getBootClasspath().join(File.pathSeparator)) } task androidJavadocsJar(type: Jar, dependsOn: androidJavadocs) { classifier = 'javadoc' from androidJavadocs.destinationDir } task androidSourcesJar(type: Jar) { classifier = 'sources' from android.sourceSets.main.java.srcDirs } artifacts { archives androidSourcesJar archives androidJavadocsJar } 
  • Maven vs Ant para compilaciones automáticas en aplicaciones de Android
  • Diferenciación de la compilación de depuración y producción de una aplicación para Android
  • Android / gradle: no puede utilizar el repositorio
  • ¿Puede un AAR incluir dependencias transitivas?
  • Error de compilación de Gradle: No se pueden cargar metadatos de Maven desde https://repo1.maven.org/maven2/io/fabric/tools/gradle/maven-metadata.xml
  • Dex: ¿Cómo configurar dex.force.jumbo = true en Maven pom a través de android-maven-plugin?
  • Biblioteca de Android - Publica varias variantes en el repositorio de Maven local usando Gradle
  • ¿Por qué no son los SDK de Android SDK en cualquier repositorio de Maven?
  • Configuración de la biblioteca de soporte de Android con maven
  • ¿Cómo integrar pepino en el proyecto de prueba de android-maven?
  • Configuraciones de compilación de Android para varios clientes
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.