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.