Android Studio - Javadoc task

 Gradle task to generate Javadoc

    The task definition shouldn't be within the Android block and in this case, its used in an application project. For a library project, just replace android.applicationVariants to android.libraryVariants. The task refers to the source code and the Android's SDK jar and excludes build generated source files.

android {
    compileSdkVersion 19
    buildToolsVersion '19.1.0'

    defaultConfig {
        minSdkVersion 19
        targetSdkVersion 19
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }

}

android.applicationVariants.all { variant ->

    task("generate${variant.name}Javadoc", type: Javadoc) {
        title = "$name $version API"
        description "Generates Javadoc for $variant.name."
        source = variant.javaCompile.source
        ext.androidJar = "${android.sdkDirectory}/platforms/${android.compileSdkVersion}/android.jar"
        classpath = files(variant.javaCompile.classpath.files) + files(ext.androidJar)
        exclude '**/BuildConfig.java'
        exclude '**/R.java'
    }

}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
}

     Once defined and synced, the task should appear in the Gradle tasks section. Clicking on either the debug or release version should save the javadocs in build/docs/javadoc under the application directory and the actual javadoc options is saved in build/tmp/generatedebugJavadoc under a file named javadoc.options.


Comments

Anonymous said…
Doesn't work anymore
. said…
Doesn't work as in? I used in this Studio 1.0

Popular posts from this blog

Android Shared User ID and android:process

Android's Watchdog daemon

Android : Watchdog is killing system server