【问题标题】:How to use Gradle to generate JavaDoc in Android Studio?如何在 Android Studio 中使用 Gradle 生成 JavaDoc?
【发布时间】:2023-03-30 23:21:01
【问题描述】:

我找不到任何关于如何配置我的 Gradle 文件来为我的项目创建 JavaDoc 的文档。我已经从 SO 和博客文章中尝试了一些 sn-ps,但它们似乎都不起作用,或者它们没有提供上下文。

这是我的 Gradle 文件。添加生成 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'
}

【问题讨论】:

    标签: android android-studio gradle android-gradle-plugin javadoc


    【解决方案1】:

    在我们的项目中,我们将以下内容添加到应用的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/");
      }
    }
    

    这会将任务添加到表单generate<build_variant>Javadoc 的构建中。因此,假设您有一个 free 和一个 pro 版本的应用程序,这将添加如下任务:

    generateFreeDebugJavadoc
    generateFreeReleaseJavadoc
    generateProDebugJavadoc
    generateProReleaseJavadoc
    

    希望对你有帮助

    【讨论】:

    • 我在尝试这个时遇到了一个奇怪的错误:Error:(77, 0) Could not find property 'applicationVariants' on com.android.build.gradle.LibraryExtension_Decorated@19be5795. - 有什么想法吗?
    • 2 件事 - 1. applicationVariants 仅适用于应用程序插件,即,如果您正在构建库,它将是 libraryVariants。 2. 检查你的 android gradle 插件版本。可能是它不是最新的,或者它太新了,这也发生了变化。
    • 最初运行此程序时,我收到有关 R.** 文件的错误。在类路径之后添加了以下“排除'**/BuildConfig.java”和“排除'**/R.java'”。
    【解决方案2】:

    在android studio中,编写一个Javadoc类型的gradle任务:

     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
      }
    

    只需执行此任务即可创建 javadocs。

    【讨论】:

      猜你喜欢
      • 2018-02-10
      • 1970-01-01
      • 2013-06-21
      • 1970-01-01
      • 2021-10-09
      • 2013-10-31
      • 2016-07-14
      • 1970-01-01
      • 2014-01-22
      相关资源
      最近更新 更多