- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我正在为 API 构建 JavaDoc,其中 API 中的类依赖于 R.java。我想构建 Javadoc 没有引用丢失的 R.java 文件的符号错误,因为即使我设置 failOnError false
构建成功但我们的 Jenkins 作业将在成功发生错误时将构建报告为失败构建。下面的任务将成功创建 javadocs,但会在构建期间报告与未找到 R.java 相关的错误。
android.libraryVariants.all { variant ->
def name = variant.name.capitalize()
task("generate${name}Doclava", type: Javadoc) {
description "Generates Javadoc for $variant.name."
source = variant.javaCompile.source
title = null
// use android.bootClasspath instead of building our own path to android jar
//ext.androidJar = "${android.sdkDirectory}/platforms/${android.compileSdkVersion}/android.jar"
// hardcoded path to generated R.java file to avoid javadoc compile issues
ext.R = "build/generated/source/r/minSDK15/release"
classpath += project.files(android.sourceSets.main.java.srcDirs, variant.javaCompile.classpath.files, android.bootClasspath)
destinationDir = file("${project.docsDir}/${name}/doclava")
options {
docletpath = configurations.jaxDoclet.files.asType(List)
doclet "com.google.doclava.Doclava"
bootClasspath new File(System.getenv('JAVA_HOME') + "/jre/lib/rt.jar")
addStringOption "XDignore.symbol.file", "-quiet"
addStringOption "hdf project.name", "${project.name}"
addStringOption "federate android", "http://d.android.com/reference"
addStringOption "federationxml android", "http://doclava.googlecode.com/svn/static/api/android-10.xml"
addStringOption "federate JDK", "http://download.oracle.com/javase/6/docs/api/index.html?"
addStringOption "federationxml JDK", "http://doclava.googlecode.com/svn/static/api/openjdk-6.xml"
addStringOption "templatedir", "${project.docsDir}/${name}/doclava/templates"
addStringOption "apixml", "${project.docsDir}/${name}/doclava/api-${project.version}.xml"
addStringOption "since doclava/since/api-1.0.0.xml", "1.0.0"
addStringOption "apiversion", "${project.version}"
failOnError false
}
// exclude generated files
exclude '**/BuildConfig.java'
exclude '**/R.java'
// exclude internal packages
exclude '**/internal/**'
options.addStringOption "apixml", "${project.docsDir}/${name}/doclava/api-${project.version}.xml"
}
}
我尝试过的一些事情:
classpath += project.files(android.sourceSets.main.java.srcDirs, variant.javaCompile.classpath.files, android.bootClasspath, ext.R)
这成功消除了错误,因此构建成功,但生成的 javadoc 在 javadoc 中有指向 R.*.class 的空链接。
exclude '**/R.java'
行,同时在类路径中不包括 R.java 的路径。 这成功地消除了错误并且构建成功,但生成的 javadoc 具有指向 R.*.class 文件的链接。
似乎 exclude
语句从类路径中排除,而不是从 javadoc 中排除。任何有关如何生成类依赖于 R.java 但在 javadoc 输出中不包含 R.java 的 javadoc 的见解将不胜感激。
最佳答案
在 Android Studio 上,进入以下设置(可以通过 File > Settings
访问设置):
Appearance & Behaviour > Scopes
您应该可以在此处浏览您的项目文件。现在选择您的文件并使用最右侧的按钮将它们包含/排除到您的范围内(您可以排除或不包含 R.java
文件和 BuildConfig.java
文件)。确保底部的“共享范围”复选框已打勾,并且您的范围有一个好记的名称。
接下来转到 Javadoc 生成器对话框(Tools > Generate Javadoc
)。选择底部的单选按钮(“自定义范围”),然后从菜单中选择您之前创建的范围。您可以为 Javadocs 配置其他设置。
最后单击“确定”,您应该已经生成了 Javadocs。
希望这能解决您的问题。
关于android - 当内部类依赖于 R.java 时,Gradle 在 Android Javadocs 中排除 R.java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34427079/
我有多个程序员为 javadocs 贡献示例,一些示例包含格式化为 /* * */ 当我将这些示例放入 javadoc 注释时,示例中的注释 close 将关闭 javadoc 注释。 /**
我目前有一些 Source and Javadoc on GitHub .您可能知道,无法在 GitHub 上查看(呈现的)HTML 页面。但是solutions为这个问题而存在。就在一天前,这个解决
我希望能够使用@nnotations 来标记要从 javadoc 中排除的类或方法。 有没有办法为此目的对标准 doclet 进行子类化?第一次浏览 javadoc-doc 没有揭示解决方案。 最佳答
我正在生成 Javadocs。现在我想自动将所有库和 JDK 类链接到该库或 JDK 的官方文档。这可能吗?如果可以,我需要哪个命令行参数 最佳答案 解析对标准 Java 类的引用需要您拥有 Java
我正在生成 Javadoc。现在我想自动将所有库和 JDK 类链接到该库或 JDK 的官方文档。这可能吗,如果是的话,我需要哪个命令行参数 最佳答案 解析对标准 Java 类的引用需要您拥有 Java
我想在我的 javadoc 中使用自定义标签,但要遵守某种约定,以便其他人可以更轻松地理解它们。在 Oracle 的官方 javadoc 文档页面上,他们列出了基本标签,与我的编辑器的 javadoc
我在 javadoc 中的代码示例中有一个 @: * * public class ArticleService { * @Autowired * private Artic
如果您有几个不同项目的标准 Javadoc,您如何处理它们以创建一个统一的文档集,其中所有内容都是交叉链接的?理想情况下,结果将类似于 NetBeans 平台中各种模块的文档: http://bits
我正在尝试将现有的 Javadoc 修复到 project . 我在运行 mvn javadoc:fix .它成功执行但没有修复一些 Javadocs。 Maven Javadoc插件的配置: [DE
我正在尝试为多模块项目创建聚合 javadoc。该项目使用 mvn install -DskipTests 编译(我没有在我的机器上运行测试)。当我运行 mvn validate javadoc:ja
当我这样做时,我收到以下错误 mvn clean deploy -DperformRelease=true [ERROR] Exit code: 1 - .java:3: package javax.
我有一个带有 maven-javadoc-plugin 和 JDK8 的 Maven 项目。当我运行 mvn javadoc:test-javadoc 时,插件会报告文档错误并停止,但是当我运行 mv
我们使用 swagger 代码生成来创建客户端 API,代码库是用 java 8 编写的,我们现在升级到 java 11。我们使用 2.4.15 版本的 swagger-codegen-cli。代码生
过了一会儿,我回来写 JavaDoc。与此同时,我开始喜欢 SO 的标记,它在纯文本中比 HTML 更具可读性。 (即使是我以前从未使用过的反勾号)。 /** * I'm talking about
我有以下依赖项并在我的 pom 文件中构建。我可以使用 Maven 命令手动创建 javadoc。我也可以成功执行构建。输出根本没有提到 javadoc。我还尝试省略输出目录路径。 POM文件依赖部分
如何在 gitlab 中发布 javadoc?到目前为止,我已将 javadocs html 页面添加到 repo,但是当我尝试查看它们时,会显示原始文本 html 源,而不是重新编辑的 html 页
我在 Eclipse 中使用 Jsoup 时遇到了这个问题。我附上了以下 jar 文件:jsoup 1.7.2.jarjsoup 1.7.2.javadoc.jarjsoup 1.7.2.source
我正在尝试修复我的项目的javadoc(主要缺少@param和@return值),并且由于有相当多的代码需要修复,我正在尝试使用javadoc:fix目标: mvn javadoc:fix 不幸的是,
有什么东西可以用来解析 JavaDoc,以便我可以在运行时通过标准 Doclet 接口(interface)对其进行操作吗?本质上,一个 Doclet 的反向操作. 我知道不可能为每个 Javadoc
由于 TypeScript 不支持压缩或混淆,而这两者都是我们需要的功能,因此我们的工具链中仍然需要像 Google 的 Closure 编译器这样的工具。有没有办法让 TypeScript 自动输出
我是一名优秀的程序员,十分优秀!