Como gerar javadoc para a biblioteca Android quando ele tem dependências que também são bibliotecas AAR?

Eu tenho um projeto de biblioteca do Android que depende de outros projetos de biblioteca do Android. Eu preciso gerar o javadoc para a biblioteca, mas ele falha porque o gradle coloca no caminho do caminho de classe do javadoc para locais .aar, mas o javadoc espera arquivos .jar.

arquivo gradle simplificado:

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.2"

    configurations {
        javadocDeps
    }

    defaultConfig {
        minSdkVersion 7
        targetSdkVersion 23
        versionCode 1
        versionName "0.1.0"
    }
}

dependencies {
    compile 'com.android.support:support-v4:23.2.0'
    compile 'com.android.support:appcompat-v7:23.2.0'
    compile 'com.nineoldandroids:library:2.4.0'
    compile 'com.annimon:stream:1.0.7'
    javadocDeps 'com.android.support:support-annotations:23.2.0'
    javadocDeps 'com.nineoldandroids:library:2.4.0'
    javadocDeps 'com.android.support:support-v4:23.2.0'
}

task sourcesJar(type: Jar) {
    from android.sourceSets.main.java.srcDirs
    classifier = 'sources'
}    

task javadoc,(type: Javadoc, dependsOn: explodeAars) {
    source = android.sourceSets.main.java.srcDirs
    classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
    classpath += configurations.javadocDeps
}

task javadocJar(type: Jar, dependsOn: javadoc) {
    classifier = 'javadoc'
    from javadoc.destinationDir
}

artifacts {
    archives javadocJar
    archives sourcesJar
}

3 soluções possíveis:

1) de alguma forma, adicionar ao caminho do caminho de classe classes.jar de todas as bibliotecas do aar depende de build / intermidiates / exploded-aar / library / version / jars / classes.jar Não sei como incluir esses caminhos na tarefa javadoc.

2) descompacte manualmente o arquivo classes.jar do arquivo aar e adicione-o ao caminho de classe da tarefa javadoc

3) hack muito sujo - caminhos codificados para a biblioteca - mas acho que isso é tão ERRADO.

Como alcançar 1 ou 2 com gradle dsl?

questionAnswers(4)

yourAnswerToTheQuestion