How to use Gradle to generate JavaDoc in Android Studio?

霸气de小男生 提交于 2021-02-07 02:02:58

问题


I can not find any documentation on how to configure my Gradle file to create the JavaDoc for my project. I already tried some snippets from SO and blog articles but none of them seem to work or they do not provide context.

This is my Gradle file. What do I need to do to add a task to generate JavaDoc?

import org.apache.tools.ant.taskdefs.condition.Os

apply plugin: 'com.android.library'

android {
    compileSdkVersion 21
    buildToolsVersion "21.1.2"

    defaultConfig {
        minSdkVersion 15
        targetSdkVersion 21
        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:21.0.3'
}

回答1:


In our projects we added the following to the app's build.gradle:

android.applicationVariants.all { variant ->
  task("generate${variant.name.capitalize()}Javadoc", type: Javadoc) {
    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)
    options.links("http://docs.oracle.com/javase/7/docs/api/");
    options.links("http://d.android.com/reference/");
  }
}

This will add tasks to the build of the form generate<build_variant>Javadoc. So let's say you have a free and a pro version of your app, this would add tasks like:

generateFreeDebugJavadoc
generateFreeReleaseJavadoc
generateProDebugJavadoc
generateProReleaseJavadoc

Hope this helps




回答2:


In android studio, write a gradle task of type Javadoc :

 task createJavadocs (type: Javadoc)
  {
        source = project.android.sourceSets.main.java.srcDirs
        options.linkSource true
        classpath += project.files(project.android.getBootClasspath().join(File.pathSeparator))
        failOnError false
  }

Simply execute this task will create javadocs.



来源:https://stackoverflow.com/questions/29162899/how-to-use-gradle-to-generate-javadoc-in-android-studio

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!