una studio plugin paquete modulos libreria library importar create crear como android gradle android-studio android-gradle

studio - Crear biblioteca Android AAR incluyendo javadoc y fuentes



create library android studio (1)

Mi equipo está desarrollando una biblioteca de Android, que se utilizará en algunas aplicaciones de ejemplo, también desarrolladas por nosotros. La biblioteca se crea como un archivo AAR. Aquí está su build.gradle

apply plugin: ''com.android.library'' apply from: ''deploy.gradle'' android { compileSdkVersion 20 buildToolsVersion ''20.0.0'' packagingOptions { exclude ''LICENSE.txt'' exclude ''LICENSE'' exclude ''NOTICE'' } defaultConfig { // Excluded for brevity } buildTypes { release { runProguard false proguardFiles getDefaultProguardFile(''proguard-android.txt''), ''proguard-rules.pro'' } } lintOptions { abortOnError false // if true, check all issues, including those that are off by default checkAllWarnings true } } dependencies { compile fileTree(dir: ''libs'', include: [''*.jar'']) compile ''com.android.support:support-v13:20.0.+'' compile ''com.google.android.gms:play-services:5.+'' compile ''com.squareup.retrofit:retrofit:1.6.1'' }

Aquí está la parte de dependencias de build.gradle de la aplicación

dependencies { compile fileTree(dir: ''libs'', include: [''*.jar'']) compile (''com.mycompany.myapp:0.6.5-SNAPSHOT@aar'') { transitive = true downloadJavadoc = true downloadSources = true } }

Puedo usar todas las clases de lib, pero no puedo ver los Javadocs ni las fuentes. ¿Cómo puedo empaquetar mi AAR para que incluya las fuentes y Javadocs?


Parece que no se puede hacer por ahora. Sin embargo, al agregar estas tareas de gradle en deploy.gradle , se crean -javadoc.jar y -sources.jar.

task androidJavadocs(type: Javadoc) { source = android.sourceSets.main.java.srcDirs } task androidJavadocsJar(type: Jar) { classifier = ''javadoc'' baseName = artifact_id from androidJavadocs.destinationDir } task androidSourcesJar(type: Jar) { classifier = ''sources'' baseName = artifact_id from android.sourceSets.main.java.srcDirs } artifacts { // archives packageReleaseJar archives androidSourcesJar archives androidJavadocsJar }

Después de eso, las fuentes y javadoc deben importarse manualmente. De acuerdo con este hilo y esta cuestión abierta , no pueden importarse automáticamente.