系列中的上一篇
当前教程
Javadoc - 文档生成器
系列中的下一篇

系列中的上一篇: Javap - 反汇编器

系列中的下一篇: Java - 您的应用程序启动器

Javadoc - 文档生成器

 

介绍 javadoc

javadoc - 从 Java 源文件生成 API 文档的 HTML 页面

 

概要

javadoc [options] [packagenames] [sourcefiles] [@files]

options 指定命令行选项,用空格分隔。

packagenames 要记录的包的名称,用空格分隔,例如 java.lang java.lang.reflect java.awt。如果要记录子包,则使用 -subpackages 选项指定包。

默认情况下,javadoc 在当前目录及其子目录中查找指定的包。使用 -sourcepath 选项指定要查找包的目录列表。

sourcefiles 要记录的 Java 源文件的名称,用空格分隔,例如 Class.java Object.java Button.java。默认情况下,javadoc 在当前目录中查找指定的类。但是,您可以指定类文件的完整路径并使用通配符,例如 /home/src/java/awt/Graphics*.java。您还可以指定相对于当前目录的路径。

@files 包含 javadoc 工具选项、包名称和源文件名称列表的文件的名称,这些名称可以按任何顺序排列。

 

描述

javadoc 工具解析一组 Java 源文件中的声明和文档注释,并生成相应的 HTML 页面,这些页面描述(默认情况下)公共和受保护的类、嵌套类(但不包括匿名内部类)、接口、构造函数、方法和字段。您可以使用 javadoc 工具生成 API 文档或一组源文件的实现文档。

您可以对整个包、单个源文件或两者运行 javadoc 工具。在记录整个包时,您可以使用 -subpackages 选项递归遍历目录及其子目录,或传递显式包名称列表。在记录单个源文件时,传递 Java 源文件名称列表。

 

一致性

标准 doclet 不会验证文档注释的内容以确保一致性,也不会尝试更正文档注释中的任何错误。任何运行 javadoc 的人都应注意,在生成不一致的输出或包含可执行内容(如 JavaScript)的输出时可能会出现问题。标准 doclet 提供 doclint 功能来帮助开发人员检测文档注释中的常见问题;但建议使用任何适当的一致性和其他检查工具检查生成的输出。

 

javadoc 的选项

以下核心 javadoc 选项等效于相应的 javac 选项。有关使用这些选项的详细说明,请参见标准选项

--add-modules

-bootclasspath

--class-path, -classpath, or -cp

--enable-preview

-encoding

-extdirs

--limit-modules

--module

--module-path or -p

--module-source-path

--release

-source

--source-path or -sourcepath

--system

--upgrade-module-path

以下选项是核心 javadoc 选项,它们不等效于相应的 javac 选项

-breakiterator 使用 BreakIterator 计算第一个句子。第一个句子将被复制到包、类或成员摘要以及字母索引中。BreakIterator 类用于确定除英语以外的所有语言的句子结尾。

English default sentence-break algorithm — Stops at a period followed by a space or an HTML block tag, such as <P>.

Breakiterator sentence-break algorithm — Stops at a period, question mark, or exclamation point followed by a space when the next word starts with a capital letter. 
This is meant to handle most abbreviations (such as "The serial no. is valid", but will not handle "Mr. Smith"). 
The -breakiterator option doesn’t stop at HTML tags or sentences that begin with numbers or symbols. The algorithm stops at the last period in ../filename, even when embedded in an HTML tag.

-doclet class 使用备用 doclet 生成输出。使用完全限定名称。此 doclet 定义内容并格式化输出。如果未使用 -doclet 选项,则 javadoc 工具使用标准 doclet 生成默认 HTML 格式。此类必须包含 start(Root) 方法。此起始类的路径由 -docletpath 选项定义。

-docletpath path 指定在何处查找 doclet 类文件(使用 -doclet 选项指定)及其依赖的任何 JAR 文件。如果起始类文件位于 JAR 文件中,则此选项指定该 JAR 文件的路径。您可以指定绝对路径或相对于当前目录的路径。如果 classpathlist 包含多个路径或 JAR 文件,则它们应在 Linux 和 macOS 上用冒号 (:) 分隔,在 Windows 上用分号 (;) 分隔。当 doclet 起始类已在搜索路径中时,此选项不是必需的。

-exclude pkglist 无条件地从 -subpackages 形成的列表中排除指定的包及其子包。即使这些包原本会被某些更早或更晚的 -subpackages 选项包含,它也会排除这些包。

以下示例将包含 java.iojava.utiljava.math(以及其他),但将排除以 java.net 和 java.lang 为根的包。请注意,这些示例排除了 java.lang.ref,它是 java.lang 的子包

Linux 和 macOS

javadoc -sourcepath /home/user/src -subpackages java -exclude java.net:java.lang

Windows

javadoc -sourcepath \user\src -subpackages java -exclude java.net:java.lang

--expand-requires value 指示 javadoc 工具扩展要记录的模块集。默认情况下,仅记录命令行上显式给出的模块。支持以下值

transitive: 另外还包括所有这些模块的必需传递依赖项。

all: 包含所有依赖项。

-help 或 --help 显示联机帮助,其中列出了所有 javadoc 和 doclet 命令行选项。

--help-extra 或 -X 打印非标准选项的概要并退出。

-Jflag 将标志直接传递给运行 javadoc 工具的 Java 运行时环境 (JRE)。例如,如果您必须确保系统为处理生成的文档分配 32 MB 的内存,则应按如下方式调用 -Xmx 选项:javadoc -J-Xmx32m -J-Xms32m com.mypackage。请注意,-Xms 是可选的,因为它只设置初始内存的大小,当您知道所需的最小内存量时,这很有用。

J 和标志之间没有空格。

使用 -version 选项报告用于运行 javadoc 工具的 JRE 的版本

javadoc -J-version

openjdk version "16" 2021-03-16
OpenJDK Runtime Environment (build 16+36-2231)
OpenJDK 64-Bit Server VM (build 16+36-2231, mixed mode, sharing)

-locale name 指定 javadoc 工具在生成文档时使用的区域设置。参数是区域设置的名称,如 java.util.Locale 文档中所述,例如 en_US(英语,美国)或 en_US_WIN(Windows 变体)。

指定区域设置会导致 javadoc 工具为消息选择该区域设置的资源文件,例如导航栏中的字符串、列表和表格的标题、帮助文件内容、stylesheet.css 文件中的注释等。它还指定按字母顺序排序的列表的排序顺序,以及确定第一个句子结尾的句子分隔符。-locale 选项不会确定记录的类源文件中指定的文档注释文本的区域设置。

-package 仅显示包、受保护和公共类和成员。

-private 显示所有类和成员。

-protected 仅显示受保护和公共类和成员。这是默认设置。

-public 仅显示公共类和成员。

-quiet 关闭消息,以便仅显示警告和错误,以便更轻松地查看它们。它还会抑制版本字符串。

--show-members value 指定记录哪些成员(字段或方法),其中 value 可以是以下任何一项

protected: The default value is protected.

public: Shows only public values.

package: Shows public, protected, and package members.

private: Shows all members.

--show-module-contents value 指定模块声明的文档粒度,其中 value 可以是 api 或 all。

--show-packages value 指定记录哪些模块包,其中 value 可以是 exported 或 all packages。

--show-types value 指定记录哪些类型(类、接口等),其中 value 可以是以下任何一项

protected: The default value. Shows public and protected types.

public: Shows only public values.

package: Shows public, protected, and package types.

private: Shows all types.

-subpackages subpkglist 从指定的包中的源文件及其子包中递归生成文档。当向源代码添加新的子包时,此选项很有用,因为它们会自动包含在内。每个包参数都是任何顶级子包(如 java)或完全限定的包(如 javax.swing),它不需要包含源文件。参数用冒号分隔,在所有操作系统上都是如此。不允许使用通配符。使用 -sourcepath 指定在何处查找包。此选项不会处理位于源代码树中但不属于这些包的源文件。

例如,以下命令为名为 java 和 javax.swing 的包及其所有子包生成文档

Linux 和 macOS

javadoc -d docs -sourcepath /home/user/src -subpackages java:javax.swing

Windows

javadoc -d docs -sourcepath \user\src -subpackages java:javax.swing

-verbose 在 javadoc 工具运行时提供更详细的消息。如果没有 -verbose 选项,则会显示加载源文件、生成文档(每个源文件一条消息)和排序的消息。-verbose 选项会导致打印其他消息,这些消息指定解析每个 Java 源文件所花费的毫秒数。

--version 打印版本信息。

 

扩展选项

以下扩展 javadoc 选项等效于相应的 javac 选项。有关使用这些选项的详细说明,请参见 javac 中的额外选项:--add-exports

--add-reads

--patch-module

-Xmaxerrs

-Xmaxwarns

以下扩展 javadoc 选项不等效于相应的 javac 选项

-Xmodule:module-name 指定正在编译的类所属的模块。

-Xold 调用旧版 javadoc 工具。

 

标准 Doclet 选项

以下选项由标准 doclet 提供。

--add-stylesheet file 为生成的文档添加额外的样式表文件。此选项可以被使用一次或多次来指定包含在文档中的额外样式表。

命令行示例

javadoc --add-stylesheet new_stylesheet_1.css --add-stylesheet new_stylesheet_2.css pkg_foo 

--allow-script-in-comments 允许选项和注释中的 JavaScript

-author 在生成的文档中包含 @author 文本。

-bottom html-code 指定要放置在每个输出文件底部的文本。该文本将放置在页面底部,位于下部导航栏下方。该文本可以包含 HTML 标签和空格,但如果包含,则该文本必须用引号括起来。对文本中的任何内部引号使用转义字符。

-charset name 指定此文档的 HTML 字符集。该名称应为 IANA 注册表、字符集中指定的首选 MIME 名称。

例如

javadoc -charset "iso-8859-1" mypackage

此命令在每个生成的页面的头部插入以下行

<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">

META 标签在 HTML 标准(4197265 和 4137321)、HTML 文档表示中进行了描述。

-d directory 指定 javadoc 工具保存生成的 HTML 文件的目标目录。如果省略 -d 选项,则文件将保存到当前目录。目录值可以是绝对路径或相对于当前工作目录的路径。目标目录将在 javadoc 工具运行时自动创建。

Linux 和 macOS: 例如,以下命令为 com.mypackage 包生成文档,并将结果保存到 /user/doc/ 目录中

javadoc -d /user/doc/ com.mypackage

Windows: 例如,以下命令为 com.mypackage 包生成文档,并将结果保存到 \user\doc\ 目录中

javadoc -d \user\doc\ com.mypackage

-docencoding name 指定生成的 HTML 文件的编码。该名称应为 IANA 注册表、字符集中指定的首选 MIME 名称。

在 javadoc 编码命令中,可以使用三种选项。-encoding 选项用于对 javadoc 工具读取的文件进行编码,而 -docencoding-charset 选项用于对 javadoc 工具写入的文件进行编码。在三种可用选项中,在一个编码命令中最多只能使用输入和输出编码选项。如果在命令中指定了输入和输出编码选项,则它们必须具有相同的值。如果未指定任何输出选项,则工具默认使用输入编码。

例如

javadoc -docencoding "iso-8859-1" mypackage

-docfilessubdirs 递归地复制 doc-file 子目录。

-doctitle html-code 指定要放置在概述摘要文件顶部的标题。标题标签中指定的文本将作为一级标题居中放置在顶部导航栏下方。标题标签可以包含 HTML 标签和空格,但如果包含,则必须将标题括在引号中。标题标签内的其他引号必须转义。例如,javadoc -header "<b>My Library</b><br>v1.0" com.mypackage。

-excludedocfilessubdir name 排除任何具有给定名称的 doc 文件子目录。启用 doc-files 目录的深度复制。子目录及其所有内容将递归地复制到目标位置。例如,目录 doc-files/example/images 及其所有内容都将被复制。还可以选择排除子目录。

-footer html-code 指定要放置在每个输出文件底部的页脚文本。html-code 值将放置在底部导航栏的右侧。html-code 值可以包含 HTML 标签和空格,但如果包含,则必须将 html-code 值括在引号中。对页脚内的任何内部引号使用转义字符。

--frames 启用在生成的输出中使用框架(默认)。

-group namep1:p2 在概述页面中将指定的包分组在一起。

-header html-code 指定要放置在每个输出文件顶部的页眉文本。页眉将放置在顶部导航栏的右侧。页眉可以包含 HTML 标签和空格,但如果包含,则必须将页眉括在引号中。对页眉内的内部引号使用转义字符。例如,javadoc -header "<b>My Library</b><br>v1.0" com.mypackage。

-helpfile filename 包含链接到顶部和底部导航栏中 HELP 链接的文件。如果没有此选项,javadoc 工具将创建一个帮助文件 help-doc.html,该文件在 javadoc 工具中是硬编码的。此选项允许您覆盖默认值。文件名可以是任何名称,不限于 help-doc.html。javadoc 工具会相应地调整导航栏中的链接。例如

Linux 和 macOS

javadoc -helpfile /home/user/myhelp.html java.awt

Windows

javadoc -helpfile C:\user\myhelp.html java.awt.

-html4 生成 HTML 4.0.1 输出。HTML 5 输出是默认值。

-html5 生成 HTML 5 输出(默认)。

--javafx or -javafx 启用 JavaFX 功能。

-keywords 为每个类生成的文档中添加 HTML 关键字 <META> 标签。这些标签可以帮助搜索引擎查找 <META> 标签以找到页面。大多数搜索整个互联网的搜索引擎不会查看 <META> 标签,因为页面可能会滥用它们。由将搜索范围限制在其自身网站的公司提供的搜索引擎可以通过查看 <META> 标签来获益。<META> 标签包括类的完全限定名称以及字段和方法的非限定名称。构造函数不包括在内,因为它们与类名相同。例如,类 String 以以下关键字开头

<META NAME="keywords" CONTENT="java.lang.String class">
<META NAME="keywords" CONTENT="CASE_INSENSITIVE_ORDER">
<META NAME="keywords" CONTENT="length()">
<META NAME="keywords" CONTENT="charAt()">

-link url 创建指向外部引用的类的现有 javadoc 生成的文档的链接。URL 参数是包含外部 javadoc 生成的文档的目录的绝对或相对 URL。您可以在指定的 javadoc 工具运行中指定多个 -link 选项以链接到多个文档。此 url 目录中必须存在 package-list 或 element-list 文件(否则,请使用 -linkoffline 选项)。

当您使用 javadoc 工具来记录包时,它会使用 package-list 文件来确定 API 中声明的包。当您为模块生成 API 文档时,javadoc 工具会使用 element-list 文件来确定 API 中声明的模块和包。

javadoc 工具从相应的列表文件读取名称,然后链接到该 URL 上的包或模块。当 javadoc 工具运行时,URL 值将复制到创建的 <A HREF> 链接中。因此,url 必须是目录的 URL,而不是文件的 URL。您可以使用 url 的绝对链接来使您的文档能够链接到任何网站上的文档,或者您可以使用相对链接来仅链接到相对位置。

如果您使用相对链接,则传递的值应该是从目标目录(使用 -d 选项指定)到包含要链接到的包的目录的相对路径。当您指定绝对链接时,通常使用 HTTP 链接。但是,如果您想链接到没有 Web 服务器的文件系统,则可以使用文件链接。仅当所有想要访问生成的文档的人员共享同一个文件系统时,才使用文件链接。在所有情况下,以及在所有操作系统上,无论 URL 是绝对的还是相对的,都使用斜杠作为分隔符,以及 https:、http: 或 file:,如 URL 备忘录:统一资源定位符中所指定。

-link https://<host>/<directory>/<directory>/.../<name>
-link http://<host>/<directory>/<directory>/.../<name>
-link file://<host>/<directory>/<directory>/.../<name>
-link <directory>/<directory>/.../<name>
-linkoffline url1 url2

此选项是 -link 选项的变体。它们都创建指向外部引用的类的 javadoc 生成的文档的链接。您可以在指定的 javadoc 工具运行中指定多个 -linkoffline 选项。

当以下情况发生时,请使用 -linkoffline 选项:

  • 链接到 javadoc 工具无法通过网络连接访问的 Web 上的文档。

  • 外部文档的 package-list 或 element-list 文件在 URL 位置不可访问或不存在,但存在于其他位置,并且可以通过 package-listelement-list 文件(通常是本地文件)指定。

如果 url1 只能在万维网上访问,则 -linkoffline 选项将消除 javadoc 工具必须具有网络连接才能生成文档的约束。

-linkoffline 选项的另一个用途是作为更新文档的解决方法。在您对一组完整的包或模块运行 javadoc 工具后,您可以再次对一组较小的已更改包或模块运行 javadoc 工具,以便将更新的文件插入回原始集中。

例如,-linkoffline 选项接受两个参数。第一个参数用于嵌入到 <a href> 链接中的字符串,第二个参数告诉 javadoc 工具在哪里找到 package-list 或 element-list 文件。

url1 或 url2 值是包含要链接到的外部 javadoc 生成的文档的目录的绝对或相对 URL。当为相对值时,该值应该是从目标目录(使用 -d 选项指定)到要链接到的包根目录的相对路径。请参阅 -link 选项中的 url。

-linksource 创建每个源文件的 HTML 版本(带行号),并在标准 HTML 文档中添加指向它们的链接。为其声明位于源文件中的类、接口、构造函数、方法和字段创建链接。否则,不会创建链接,例如,对于默认构造函数和生成的类。

此选项会公开包含的源文件中的所有私有实现细节,包括私有类、私有字段和私有方法的主体,而不管 -public-package-protected-private 选项如何。除非您还使用 -private 选项,否则并非所有私有类或接口都可通过链接访问。

每个链接都出现在其声明中标识符的名称上。例如,指向 Button 类的源代码的链接将位于单词 Button

public class Button extends Component implements Accessible

指向 Button 类中 getLabel 方法的源代码的链接位于单词 getLabel

public String getLabel()

--main-stylesheet file-stylesheetfile file 指定包含在生成的文档中使用的 CSS 样式定义的备用样式表文件的路径。此选项允许您覆盖默认值。如果您未指定此选项,javadoc 工具将创建并使用默认样式表。文件名可以是任何名称,不限于 stylesheet.css--main-stylesheet 选项是首选形式。

命令行示例

javadoc --main-stylesheet main_stylesheet.css pkg_foo

-nocomment 抑制整个注释主体,包括主要描述和所有标签,并且仅生成声明。此选项允许您重用最初用于不同目的的源文件,以便您在新的项目早期阶段生成骨架 HTML 文档。

-nodeprecated 阻止在文档中生成任何已弃用的 API。这与 -nodeprecatedlist 选项的作用相同,并且不会在文档的其余部分生成任何已弃用的 API。这在编写代码时很有用,因为您不想被已弃用的代码分散注意力。

-nodeprecatedlist 阻止生成包含已弃用 API 列表的文件(deprecated-list.html)以及导航栏中指向该页面的链接。javadoc 工具将继续在文档的其余部分生成已弃用的 API。这在您的源代码中不包含任何已弃用的 API 时很有用,并且您希望使导航栏更简洁。

--no-frames 禁用在生成的输出中使用框架。

-nohelp 省略每个输出页面顶部和底部的导航栏中的 HELP 链接。

-noindex 省略生成的文档中的索引。索引默认生成。

-nonavbar 阻止生成通常位于生成的页面顶部和底部的导航栏、页眉和页脚。-nonavbar 选项对 -bottom 选项没有影响。-nonavbar 选项在您只对内容感兴趣并且不需要导航时很有用,例如,当您将文件转换为 PostScript 或 PDF 以仅用于打印时。

-noqualifier name1:name2... 从输出中排除限定符列表。包名将从类或接口名称出现的位置中删除。

  • 以下示例省略所有包限定符:-noqualifier all。

  • 以下示例省略 java.lang 和 java.io 包限定符:-noqualifier java.lang:java.io

  • 以下示例省略以 java 和 com.sun 子包开头的包限定符,但不省略 javax:-noqualifier java.*:com.sun.*

在由于先前行为而出现包限定符的位置,名称可以适当地缩短。无论是否使用 -noqualifier 选项,此规则都适用。

-nosince 从生成的文档中省略与 @since 标签关联的 Since 部分。

-notimestamp 抑制时间戳,该时间戳隐藏在生成的 HTML 中每个页面顶部附近的 HTML 注释中。当您想对两个源代码库运行 javadoc 工具并获取它们之间的差异时,-notimestamp 选项很有用,因为它可以防止时间戳导致差异(否则将是每个页面的差异)。时间戳包含 javadoc 工具的版本号。

-notree 从生成的文档中省略类和接口层次结构页面。这些是您使用导航栏中的“树”按钮访问的页面。层次结构默认情况下生成。

--override-methods (detail|summary) 在详细信息或摘要部分记录重写的方法。

-overview filename 指定 javadoc 工具应从 filename 指定的源文件中检索概述文档的文本,并将其放置在概述页面(overview-summary.html)上。使用文件名指定的相对路径相对于当前工作目录。

虽然您可以为 filename 值使用任何您想要的名称,并将它放置在您想要的任何位置,但通常将其命名为 overview.html 并将其放置在源代码树中包含最顶层包目录的目录中。在此位置,在记录包时不需要路径,因为 -sourcepath 选项指向此文件。

Linux 和 macOS:例如,如果 java.lang 包的源代码树为 /src/classes/java/lang/,那么您可以将概述文件放置在 /src/classes/overview.html 中。

Windows:例如,如果 java.lang 包的源代码树为 \src\classes\java\lang\,那么您可以将概述文件放置在 \src\classes\overview.html 中。

只有在将两个或多个包名称传递给 javadoc 工具时才会创建概述页面。概述页面的标题由 -doctitle 设置。

-serialwarn 为缺少 @serial 标记生成编译时警告。默认情况下,javadoc 不生成任何串行警告。使用此选项显示串行警告,这有助于正确记录默认可序列化字段和 writeExternal 方法。

-sourcetab tablength 指定源代码中每个制表符使用的空格数。

-splitindex 将索引文件拆分为多个文件,按字母顺序排列,每个字母一个文件,再加上一个文件用于任何以非字母符号开头的索引条目。

-tag name:locations:header 指定单个参数自定义标记。为了使 javadoc 工具对标记名称进行拼写检查,为源代码中存在的每个自定义标记包含一个 -tag 选项非常重要,禁用(使用 X)当前运行中未输出的那些标记。冒号 : 始终是分隔符。-tag 选项以粗体输出标记标题 header,然后在下一行输出其单个参数的文本。与任何块标记类似,参数文本可以包含内联标记,这些标记也会被解释。输出类似于标准单参数标记,例如 @return 和 @author 标记。省略 header 值会导致 tagname 成为标题。

-taglet class 指定用于生成该标记文档的 taglet 的完全限定名称。使用类的完全限定名称作为 class 值。此 taglet 还定义了自定义标记具有的文本参数数量。taglet 接受这些参数,处理它们,并生成输出。

Taglet 适用于块标记或内联标记。它们可以具有任意数量的参数并实现自定义行为,例如使文本变为粗体、格式化项目符号、将文本写入文件或启动其他进程。Taglet 只能确定标记应该出现在哪里以及以什么形式出现。所有其他决定由 doclet 做出。taglet 不能执行诸如从包含的类列表中删除类名之类的操作。但是,它可以执行副作用,例如将标记的文本打印到文件或触发另一个进程。使用 -tagletpath 选项指定 taglet 的路径。以下示例在生成的页面中,将 To Do taglet 插入 Parameters 之后,Throws 之前。

-taglet com.sun.tools.doclets.ToDoTaglet
-tagletpath /home/taglets 
-tag return
-tag param
-tag todo
-tag throws
-tag see

或者,您可以使用 -taglet 选项代替其 -tag 选项,但这可能难以阅读。

-tagletpath tagletpathlist 指定查找 taglet 类文件的搜索路径。tagletpathlist 可以通过冒号 : 分隔包含多个路径。javadoc 工具搜索指定路径的所有子目录。

-top html-code 指定要放置在每个输出文件顶部的文本。

-use 创建类和包使用页面。为每个记录的类和包包含一个 Use 页面。该页面描述了哪些包、类、方法、构造函数和字段使用指定类或包的任何 API。给定类 C,使用类 C 的内容将包括 C 的子类、声明为 C 的字段、返回 C 的方法以及参数类型为 C 的方法和构造函数。例如,您可以查看 String 类型的 Use 页面。因为 java.awt.Font 类中的 getName 方法返回类型 String,所以 getName 方法使用 String,因此 getName 方法出现在 String 的 Use 页面上。这仅记录 API 的使用情况,而不是实现。当方法在其实现中使用 String,但没有将字符串作为参数或返回字符串时,这并不被视为 String 的使用。要访问生成的 Use 页面,请转到类或包,然后单击导航栏中的 Use 链接。

-version 在生成的文档中包含版本文本。默认情况下省略此文本。要了解您正在使用哪个版本的 javadoc 工具,请使用 -J-version 选项。

-windowtitle title 指定要放置在 HTML <title> 标记中的标题。在标题标记中指定的文本将出现在窗口标题中,以及在任何人为该页面创建的任何浏览器书签(收藏夹)中。此标题不应包含任何 HTML 标记,因为浏览器无法正确解释它们。对标题标记中的任何内部引号使用转义字符。如果省略了 -windowtitle 选项,则 javadoc 工具将使用 -doctitle 选项的值作为 -windowtitle 选项。例如,javadoc -windowtitle "My Library" com.mypackage

 

标准 Doclet 提供的其他选项

以下是标准 doclet 提供的其他选项,可能会在未经通知的情况下更改。其他选项可能不太常用,或者被认为是高级的。

-Xdoclint 启用对 Javadoc 注释中问题的推荐检查。

-Xdoclint:(all|none|[-]group) 启用或禁用对错误引用、缺乏可访问性、缺少 javadoc 注释的特定检查,并报告无效 javadoc 语法和缺少 HTML 标记的错误。

此选项使 javadoc 工具能够检查生成的输出中包含的所有文档注释。您可以使用标准选项 -public-protected-package-private 选择要包含在生成的输出中的项目。

启用 -Xdoclint 时,它会使用类似于 javac 命令的消息报告问题。javadoc 工具会打印一条消息、源代码行的副本以及指向检测到错误的确切位置的插入符号。消息可能是警告或错误,具体取决于其严重程度以及如果生成的文档通过验证器运行,则可能导致错误的可能性。例如,错误引用或缺少 javadoc 注释不会导致 javadoc 工具生成无效的 HTML,因此这些问题被报告为警告。语法错误或缺少 HTML 结束标记会导致 javadoc 工具生成无效的输出,因此这些问题被报告为错误。

-Xdoclint 选项根据请求的标记验证输入注释。

默认情况下,-Xdoclint 选项已启用。使用选项 -Xdoclint:none 禁用它。

以下选项更改 -Xdoclint 选项报告的内容

`-Xdoclint none`: Disables the `-Xdoclint` option

`-Xdoclint group`: Enables group checks

`-Xdoclint all`: Enables all groups of checks

`-Xdoclint all,-group`: Enables all checks except group checks

group 变量具有以下值之一

  • accessibility:检查可访问性检查器要检测的问题(例如,在 <table> 标记中未指定标题或摘要属性)。

  • html:检测高级 HTML 问题,例如将块元素放在内联元素中,或者不关闭需要结束标记的元素。这些规则源自 HTML 4 规范或 HTML 5 规范,具体取决于所选的标准 doclet html 输出生成。这种类型的检查使 javadoc 工具能够检测一些浏览器可能无法按预期解释的 HTML 问题。

  • missing:检查缺少的 Javadoc 注释或标记(例如,缺少注释或类,或者缺少 @return 标记或方法上的类似标记)。

  • reference:检查与 javadoc 标记中对 Java API 元素的引用相关的問題(例如,在 @see 中找不到的项目或 @param 后的错误名称)。

  • syntax:检查低级问题,例如未转义的尖括号 <> 以及与号 & 以及无效的 javadoc 标记。

您可以多次指定 -Xdoclint 选项以启用该选项以检查多个类别中的错误和警告。或者,您可以使用前面的选项指定多个错误和警告类别。例如,使用以下任一命令检查文件 filename 中的 HTML、语法和可访问性问题。

javadoc -Xdoclint:html -Xdoclint:syntax -Xdoclint:accessibility filename
javadoc -Xdoclint:html,syntax,accessibility filename

-Xdoclint/package:([-]) packages 启用或禁用特定包中的检查。packages 是一个用逗号分隔的包规范列表。包规范要么是包的限定名称,要么是包名称前缀后跟 *,它扩展到给定包的所有子包。在包规范前加上一个破折号 (-) 以禁用对指定包的检查。

-Xdocrootparent url 将 javadoc 注释中所有紧随 /.. 的 @docRoot 项替换为 url。


最后更新: 2021 年 9 月 14 日


系列中的上一篇
当前教程
Javadoc - 文档生成器
系列中的下一篇

系列中的上一篇: Javap - 反汇编器

系列中的下一篇: Java - 您的应用程序启动器