JAVADOC
Section: JDK Commands (1)
Updated: 2021
Index
Return to Main Contents
NAME
javadoc - generate HTML pages of API documentation from Java source
files
SYNOPSIS
javadoc [options] [packagenames]
[sourcefiles] [@files]
- options
-
Specifies command-line options, separated by spaces.
See Options for javadoc, Extended Options,
Standard doclet Options, and Additional Options Provided
by the Standard doclet.
-
- packagenames
-
Specifies names of packages that you want to document, separated by
spaces, for example java.lang java.lang.reflect java.awt.
If you want to also document the subpackages, then use the
-subpackages option to specify the packages.
-
By default, javadoc looks for the specified packages in the
current directory and subdirectories.
Use the -sourcepath option to specify the list of directories
where to look for packages.
- sourcefiles
-
Specifies names of Java source files that you want to document,
separated by spaces, for example
Class.java Object.java Button.java.
By default, javadoc looks for the specified classes in the
current directory.
However, you can specify the full path to the class file and use
wildcard characters, for example
/home/src/java/awt/Graphics*.java.
You can also specify the path relative to the current directory.
-
- @files
-
Specifies names of files that contain a list of javadoc tool
options, package names, and source file names in any order.
-
DESCRIPTION
The javadoc tool parses the declarations and documentation
comments in a set of Java source files and produces corresponding HTML
pages that describe (by default) the public and protected classes,
nested classes (but not anonymous inner classes), interfaces,
constructors, methods, and fields.
You can use the javadoc tool to generate the API documentation
or the implementation documentation for a set of source files.
You can run the javadoc tool on entire packages, individual
source files, or both.
When documenting entire packages, you can use the -subpackages
option either to recursively traverse a directory and its
subdirectories, or to pass in an explicit list of package names.
When you document individual source files, pass in a list of Java source
file names.
See javadoc Overview
[https://www.oracle.com/pls/topic/lookup?ctx=en/java/javase/13/tools&id=JSJAV-GUID-7A344353-3BBF-45C4-8B28-15025DDCC643]
in Java Platform, Standard Edition Javadoc Guide for information about
using the javadoc tool.
CONFORMANCE
The standard doclet does not validate the content of documentation
comments for conformance, nor does it attempt to correct any errors in
documentation comments.
Anyone running javadoc is advised to be aware of the problems that may
arise when generating non-conformant output or output containing
executable content, such as JavaScript.
The standard doclet does provide the doclint feature to help
developers detect common problems in documentation comments; but it is
also recommended to check the generated output with any appropriate
conformance and other checking tools.
For more details on the conformance requirements for HTML5 documents,
see Conformance requirements
[https://www.w3.org/TR/html5/infrastructure.html#conformance-requirements]
in the HTML5 Specification.
For more details on security issues related to web pages, see the
Open Web Application Security Project (OWASP)
[https://www.owasp.org] page.
OPTIONS FOR JAVADOC
The following core javadoc options are equivalent to
corresponding javac options.
See Standard Options in javac for the detailed
descriptions of using these options:
- •
-
--add-modules
- •
-
-bootclasspath
- •
-
--class-path, -classpath, or -cp
- •
-
--enable-preview
- •
-
-encoding
- •
-
-extdirs
- •
-
--limit-modules
- •
-
--module
- •
-
--module-path or -p
- •
-
--module-source-path
- •
-
--release
- •
-
--source or -source
- •
-
--source-path or -sourcepath
- •
-
--system
- •
-
--upgrade-module-path
The following options are the core javadoc options that are not
equivalent to a corresponding javac option:
Note:
In tools that support -- style options, the GNU-style
options can use the equal sign (=) instead of a white space to separate
the name of an option from its value.
- -breakiterator
-
Computes the first sentence with BreakIterator.
The first sentence is copied to the package, class, or member summary
and to the alphabetic index.
The BreakIterator class is used to determine the end of a
sentence for all languages except for English.
-
- •
-
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
-
Generates output by using an alternate doclet.
Use the fully qualified name.
This doclet defines the content and formats the output.
If the -doclet option isn't used, then the
javadoc tool uses the standard doclet for generating the
default HTML format.
This class must contain the start(Root) method.
The path to this starting class is defined by the -docletpath
option.
-
- -docletpath path
-
Specifies where to find doclet class files (specified with the
-doclet option) and any JAR files it depends on.
If the starting class file is in a JAR file, then this option specifies
the path to that JAR file.
You can specify an absolute path or a path relative to the current
directory.
If classpathlist contains multiple paths or JAR files, then
they should be separated with a colon (:) on Linux and a
semi-colon (;) on Windows.
This option isn't necessary when the doclet starting class
is already in the search path.
-
- -exclude pkglist
-
Unconditionally, excludes the specified packages and their subpackages
from the list formed by -subpackages.
It excludes those packages even when they would otherwise be included by
some earlier or later -subpackages option.
-
The following example would include java.io,
java.util, and java.math (among others), but would
exclude packages rooted at java.net and java.lang.
Notice that these examples exclude java.lang.ref, which is a
subpackage of java.lang.
- •
-
Linux and OS X:
-
-
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
-
Instructs the javadoc tool to expand the set of modules to be
documented.
By default, only the modules given explicitly on the command line are
documented.
Supports the following values:
-
- •
-
transitive: additionally includes all the required transitive
dependencies of those modules.
- •
-
all: includes all dependencies.
- --help, -help, -h, or -?
-
Prints a synopsis of the standard options.
-
- --help-extra or -X
-
Prints a synopsis of the set of extra options.
-
- -Jflag
-
Passes flag directly to the Java Runtime Environment (JRE) that
runs the javadoc tool.
For example, if you must ensure that the system sets aside 32 MB of
memory in which to process the generated documentation, then you would
call the -Xmx option as follows:
javadoc -J-Xmx32m -J-Xms32m com.mypackage.
Be aware that -Xms is optional because it only sets the size
of initial memory, which is useful when you know the minimum amount of
memory required.
-
There is no space between the J and the flag.
Use the -version option to report the version of the JRE being
used to run the javadoc tool.
-
javadoc -J-version
java version "10-ea" 2018-03-20
Java(TM) SE Runtime Environment 18.3 (build 10-ea+36)
Java HotSpot(TM) 64-Bit Server VM 18.3 (build 10-ea+36, mixed mode)
- -locale name
-
Specifies the locale that the javadoc tool uses when it
generates documentation.
The argument is the name of the locale, as described in
java.util.Locale documentation, such as en_US
(English, United States) or en_US_WIN (Windows variant).
-
Note:
The -locale option must be placed ahead (to the left) of any
options provided by the standard doclet or any other doclet.
Otherwise, the navigation bars appear in English.
This is the only command-line option that depends on order.
Specifying a locale causes the javadoc tool to choose the
resource files of that locale for messages such as strings in the
navigation bar, headings for lists and tables, help file contents,
comments in the stylesheet.css file, and so on.
It also specifies the sorting order for lists sorted alphabetically, and
the sentence separator to determine the end of the first sentence.
The -locale option doesn't determine the locale of the
documentation comment text specified in the source files of the
documented classes.
- -package
-
Shows only package, protected, and public classes and members.
-
- -private
-
Shows all classes and members.
-
- -protected
-
Shows only protected and public classes and members.
This is the default.
-
- -public
-
Shows only the public classes and members.
-
- -quiet
-
Shuts off messages so that only the warnings and errors appear to make
them easier to view.
It also suppresses the version string.
-
- --show-members value
-
Specifies which members (fields or methods) are documented, where
value can be any of the following:
-
- •
-
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
-
Specifies the documentation granularity of module declarations, where
value can be api or all.
-
- --show-packages value
-
Specifies which modules packages are documented, where value
can be exported or all packages.
-
- --show-types value
-
Specifies which types (classes, interfaces, etc.) are documented, where
value can be any of the following:
-
- •
-
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
-
Generates documentation from source files in the specified packages and
recursively in their subpackages.
This option is useful when adding new subpackages to the source code
because they are automatically included.
Each package argument is any top-level subpackage (such as
java) or fully qualified package (such as javax.swing)
that doesn't need to contain source files.
Arguments are separated by colons on all operating systems.
Wild cards aren't allowed.
Use -sourcepath to specify where to find the packages.
This option doesn't process source files that are in the source tree
but don't belong to the packages.
-
For example, the following commands generates documentation for packages
named java and javax.swing and all of their
subpackages.
- •
-
Linux and OS X:
-
-
javadoc -d docs -sourcepath /home/user/src -subpackages java:javax.swing
- •
-
Windows:
-
-
javadoc -d docs -sourcepath \user\src -subpackages java:javax.swing
- -verbose
-
Provides more detailed messages while the javadoc tool runs.
Without the -verbose option, messages appear for loading the
source files, generating the documentation (one message per source
file), and sorting.
The -verbose option causes the printing of additional messages
that specify the number of milliseconds to parse each Java source file.
-
- --version
-
Prints version information.
-
- -Werror
-
Reports an error if any warnings occur.
-
EXTENDED OPTIONS
Note:
The extended options for javadoc are subject to change without
notice.
The following extended javadoc options are equivalent to
corresponding javac options.
See Extra Options in javac for the detailed
descriptions of using these options:
- •
-
--add-exports
- •
-
--add-reads
- •
-
--patch-module
- •
-
-Xmaxerrs
- •
-
-Xmaxwarns
STANDARD DOCLET OPTIONS
The following options are provided by the standard doclet.
- --add-stylesheet file
-
Adds additional stylesheet file for the generated documentation.
This option can be used one or more times to specify additional
stylesheets included in the documentation.
-
Command-line example:
-
javadoc --add-stylesheet new_stylesheet_1.css --add-stylesheet new_stylesheet_2.css pkg_foo
- --allow-script-in-comments
-
Allow JavaScript in options and comments
-
- -author
-
Includes the @author text in the generated docs.
-
- -bottom html-code
-
Specifies the text to be placed at the bottom of each output file.
The text is placed at the bottom of the page, underneath the lower
navigation bar.
The text can contain HTML tags and white space, but when it does, the
text must be enclosed in quotation marks.
Use escape characters for any internal quotation marks within text.
-
- -charset name
-
Specifies the HTML character set for this document.
The name should be a preferred MIME name as specified in the IANA
Registry, Character Sets
[http://www.iana.org/assignments/character-sets].
-
For example:
-
javadoc -charset "iso-8859-1" mypackage
This command inserts the following line in the head of every generated
page:
-
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
The META tag is described in the HTML standard (4197265
and 4137321), HTML Document Representation
[http://www.w3.org/TR/REC-html40/charset.html#h-5.2.2].
- -d directory
-
Specifies the destination directory where the javadoc tool
saves the generated HTML files.
If you omit the -d option, then the files are saved to the
current directory.
The directory value can be absolute or relative to the current
working directory.
The destination directory is automatically created when the
javadoc tool runs.
-
- •
-
Linux and OS X: For example, the following command generates
the documentation for the package com.mypackage and saves the
results in the /user/doc/ directory:
-
-
javadoc -d /user/doc/ com.mypackage
- •
-
Windows: For example, the following command generates the
documentation for the package com.mypackage and saves the
results in the \user\doc\ directory:
-
-
javadoc -d \user\doc\ com.mypackage
- -docencoding name
-
Specifies the encoding of the generated HTML files.
The name should be a preferred MIME name as specified in the IANA
Registry, Character Sets
[http://www.iana.org/assignments/character-sets].
-
Three options are available for use in a javadoc encoding
command.
The -encoding option is used for encoding the files read by
the javadoc tool, while the -docencoding and
-charset options are used for encoding the files written by
the tool.
Of the three available options, at most, only the input and an output
encoding option are used in a single encoding command.
If you specify both input and output encoding options in a command, they
must be the same value.
If you specify neither output option, it the tool defaults to the input
encoding.
For example:
-
javadoc -docencoding "iso-8859-1" mypackage
- -docfilessubdirs
-
Recursively copies doc-file subdirectories.
-
- -doctitle html-code
-
Specifies the title to place near the top of the overview summary file.
The text specified in the title tag is placed as a centered,
level-one heading directly beneath the top navigation bar.
The title tag can contain HTML tags and white space, but when
it does, you must enclose the title in quotation marks.
Additional quotation marks within the title tag must be
escaped.
For example,
javadoc -doctitle "<b>My Library</b><br>v1.0" com.mypackage.
-
- -excludedocfilessubdir name
-
Excludes any doc files sub directories with the given name.
Enables deep copying of doc-files directories.
Subdirectories and all contents are recursively copied to the
destination.
For example, the directory doc-files/example/images and all of
its contents are copied.
There is also an option to exclude subdirectories.
-
- -footer html-code
-
Specifies the footer text to be placed at the bottom of each output
file.
Thehtml-code value is placed to the right of the lower
navigation bar.
The html-code value can contain HTML tags and white space, but
when it does, the html-code value must be enclosed in
quotation marks.
Use escape characters for any internal quotation marks within a footer.
-
- -group namep1:p2
-
Group the specified packages together in the Overview page.
-
- -header html-code
-
Specifies the header text to be placed at the top of each output file.
The header is placed to the right of the upper navigation bar.
The header can contain HTML tags and white space, but when it
does, the header must be enclosed in quotation marks.
Use escape characters for internal quotation marks within a header.
For example,
javadoc -header "<b>My Library</b><br>v1.0" com.mypackage.
-
- -helpfile filename
-
Includes the file that links to the HELP link in the top and
bottom navigation bars .
Without this option, the javadoc tool creates a help file
help-doc.html that is hard-coded in the javadoc
tool.
This option lets you override the default.
The filename can be any name and isn't restricted to
help-doc.html.
The javadoc tool adjusts the links in the navigation bar
accordingly.
For example:
-
- •
-
Linux and OS X:
-
-
javadoc -helpfile /home/user/myhelp.html java.awt.
- •
-
Windows:
-
-
javadoc -helpfile C:\user\myhelp.html java.awt.
- -html5
-
This option is a no-op and is just retained for backwards
compatibility.
-
- --javafx or -javafx
-
Enables JavaFX functionality.
-
- -keywords
-
Adds HTML keyword <META> tags to the generated file for each
class.
These tags can help search engines that look for <META> tags
find the pages.
Most search engines that search the entire Internet don't look at
<META> tags, because pages can misuse them.
Search engines offered by companies that confine their searches to their
own website can benefit by looking at <META> tags.
The <META> tags include the fully qualified name of the class
and the unqualified names of the fields and methods.
Constructors aren't included because they are identical to the class
name.
For example, the class String starts with these keywords:
-
-
<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
-
Creates links to existing javadoc generated documentation of
externally referenced classes.
The url argument is the absolute or relative URL of the
directory that contains the external javadoc generated
documentation.
You can specify multiple -link options in a specified
javadoc tool run to link to multiple documents.
-
Either a package-list or an element-list file must
be in this url directory (otherwise, use the
-linkoffline option).
Note:
The package-list and element-list files are
generated by the javadoc tool when generating the API
documentation and should not be modified by the user.
When you use the javadoc tool to document packages, it uses the
package-list file to determine the packages declared in an
API.
When you generate API documents for modules, the javadoc tool
uses the element-list file to determine the modules and
packages declared in an API.
The javadoc tool reads the names from the appropriate list file
and then links to the packages or modules at that URL.
When the javadoc tool runs, the url value is copied
into the <A HREF> links that are created.
Therefore, url must be the URL to the directory and not to a
file.
You can use an absolute link for url to enable your documents
to link to a document on any web site, or you can use a relative link to
link only to a relative location.
If you use a relative link, then the value you pass in should be the
relative path from the destination directory (specified with the
-d option) to the directory containing the packages being
linked to.
When you specify an absolute link, you usually use an HTTP link.
However, if you want to link to a file system that has no web server,
then you can use a file link.
Use a file link only when everyone who wants to access the generated
documentation shares the same file system.
In all cases, and on all operating systems, use a slash as the
separator, whether the URL is absolute or relative, and https:,
http:, or file: as specified in the URL Memo:
Uniform Resource Locators [http://www.ietf.org/rfc/rfc1738.txt].
-
-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
-
This option is a variation of the -link option.
They both create links to javadoc generated documentation for
externally referenced classes.
You can specify multiple -linkoffline options in a specified
javadoc tool run.
-
Use the -linkoffline option when:
- •
-
Linking to a document on the web that the javadoc tool
can't access through a web connection
- •
-
The package-list or element-list file of the
external document either isn't accessible or doesn't exist at
the URL location, but does exist at a different location and can be
specified by either the package-list or element-list
file (typically local).
Note:
The package-list and element-list files are
generated by the javadoc tool when generating the API
documentation and should not be modified by the user.
If url1 is accessible only on the World Wide Web, then the
-linkoffline option removes the constraint that the
javadoc tool must have a web connection to generate
documentation.
Another use of the -linkoffline option is as a work-around to
update documents.
After you have run the javadoc tool on a full set of packages
or modules, you can run the javadoc tool again on a smaller set
of changed packages or modules, so that the updated files can be
inserted back into the original set.
For example, the -linkoffline option takes two arguments.
The first is for the string to be embedded in the <a href>
links, and the second tells the javadoc tool where to find
either the package-list or element-list file.
The url1 or url2 value is the absolute or relative URL
of the directory that contains the external javadoc generated
documentation that you want to link to.
When relative, the value should be the relative path from the
destination directory (specified with the -d option) to the
root of the packages being linked to.
See url in the -link option.
- -linksource
-
Creates an HTML version of each source file (with line numbers) and adds
links to them from the standard HTML documentation.
Links are created for classes, interfaces, constructors, methods, and
fields whose declarations are in a source file.
Otherwise, links aren't created, such as for default constructors
and generated classes.
-
This option exposes all private implementation details in the included
source files, including private classes, private fields, and the bodies
of private methods, regardless of the -public,
-package, -protected, and -private
options.
Unless you also use the -private option, not all private
classes or interfaces are accessible through links.
Each link appears on the name of the identifier in its declaration.
For example, the link to the source code of the Button class
would be on the word Button:
-
public class Button extends Component implements Accessible
The link to the source code of the getLabel method in the
Button class is on the word getLabel:
-
public String getLabel()
- --main-stylesheet file or -stylesheetfile file
-
Specifies the path of an alternate stylesheet file that contains the
definitions for the CSS styles used in the generated documentation.
This option lets you override the default.
If you do not specify the option, the javadoc tool will create
and use a default stylesheet.
The file name can be any name and isn't restricted to
stylesheet.css.
The --main-stylesheet option is the preferred form.
-
Command-line example:
-
javadoc --main-stylesheet main_stylesheet.css pkg_foo
- -nocomment
-
Suppresses the entire comment body, including the main description and
all tags, and generate only declarations.
This option lets you reuse source files that were originally intended
for a different purpose so that you can produce skeleton HTML
documentation during the early stages of a new project.
-
- -nodeprecated
-
Prevents the generation of any deprecated API in the documentation.
This does what the -nodeprecatedlist option does, and it
doesn't generate any deprecated API throughout the rest of the
documentation.
This is useful when writing code when you don't want to be
distracted by the deprecated code.
-
- -nodeprecatedlist
-
Prevents the generation of the file that contains the list of deprecated
APIs (deprecated-list.html) and the link in the navigation bar
to that page.
The javadoc tool continues to generate the deprecated API
throughout the rest of the document.
This is useful when your source code contains no deprecated APIs, and
you want to make the navigation bar cleaner.
-
- --no-frames
-
This option is a no-op and is just retained for backwards
compatibility.
-
- -nohelp
-
Omits the HELP link in the navigation bars at the top and bottom of each
page of output.
-
- -noindex
-
Omits the index from the generated documents.
The index is produced by default.
-
- -nonavbar
-
Prevents the generation of the navigation bar, header, and footer, that
are usually found at the top and bottom of the generated pages.
The -nonavbar option has no affect on the -bottom
option.
The -nonavbar option is useful when you are interested only in
the content and have no need for navigation, such as when you are
converting the files to PostScript or PDF for printing only.
-
- -noqualifier name1:name2...
-
Excludes the list of qualifiers from the output.
The package name is removed from places where class or interface names
appear.
-
The following example omits all package qualifiers:
-noqualifier all.
The following example omits java.lang and java.io
package qualifiers: -noqualifier java.lang:java.io.
The following example omits package qualifiers starting with
java and com.sun subpackages, but not
javax: -noqualifier java.*:com.sun.*.
Where a package qualifier would appear due to the previous behavior, the
name can be suitably shortened.
This rule is in effect whether or not the -noqualifier option
is used.
- -nosince
-
Omits from the generated documents the Since sections
associated with the @since tags.
-
- -notimestamp
-
Suppresses the time stamp, which is hidden in an HTML comment in the
generated HTML near the top of each page.
The -notimestamp option is useful when you want to run the
javadoc tool on two source bases and get the differences
between diff them, because it prevents time stamps from causing
a diff (which would otherwise be a diff on every
page).
The time stamp includes the javadoc tool release number.
-
- -notree
-
Omits the class and interface hierarchy pages from the generated
documents.
These are the pages you reach using the Tree button in the navigation
bar.
The hierarchy is produced by default.
-
- --override-methods (detail|summary)
-
Documents overridden methods in the detail or summary sections.
-
- -overview filename
-
Specifies that the javadoc tool should retrieve the text for
the overview documentation from the source file specified by
filename and place it on the Overview page
(overview-summary.html).
A relative path specified with the file name is relative to the current
working directory.
-
While you can use any name you want for the filename value and
place it anywhere you want for the path, it is typical to name it
overview.html and place it in the source tree at the directory
that contains the topmost package directories.
In this location, no path is needed when documenting packages, because
the -sourcepath option points to this file.
- •
-
Linux and OS X: For example, if the source tree for the
java.lang package is /src/classes/java/lang/, then you
could place the overview file at /src/classes/overview.html.
- •
-
Windows: For example, if the source tree for the
java.lang package is \src\classes\java\lang\,
then you could place the overview file at
\src\classes\overview.html
The overview page is created only when you pass two or more package
names to the javadoc tool.
The title on the overview page is set by -doctitle.
- -serialwarn
-
Generates compile-time warnings for missing @serial tags.
By default, Javadoc generates no serial warnings.
Use this option to display the serial warnings, which helps to properly
document default serializable fields and writeExternal methods.
-
- -sourcetab tablength
-
Specifies the number of spaces each tab uses in the source.
-
- -splitindex
-
Splits the index file into multiple files, alphabetically, one file per
letter, plus a file for any index entries that start with
non-alphabetical symbols.
-
- -tag name:locations:header
-
Specifies single argument custom tags.
For the javadoc tool to spell-check tag names, it is important
to include a -tag option for every custom tag that is present
in the source code, disabling (with X) those that aren't
being output in the current run.
The colon (:) is always the separator.
The -tag option outputs the tag heading, header, in
bold, followed on the next line by the text from its single argument.
Similar to any block tag, the argument text can contain inline tags,
which are also interpreted.
The output is similar to standard one-argument tags, such as the
@return and @author tags.
Omitting a header value causes the name to be the
heading.
-
- -taglet class
-
Specifies the fully qualified name of the taglet used in generating the
documentation for that tag.
Use the fully qualified name for the class value.
This taglet also defines the number of text arguments that the custom
tag has.
The taglet accepts those arguments, processes them, and generates the
output.
-
Taglets are useful for block or inline tags.
They can have any number of arguments and implement custom behavior,
such as making text bold, formatting bullets, writing out the text to a
file, or starting other processes.
Taglets can only determine where a tag should appear and in what form.
All other decisions are made by the doclet.
A taglet can't do things such as remove a class name from the list
of included classes.
However, it can execute side effects, such as printing the tag's
text to a file or triggering another process.
Use the -tagletpath option to specify the path to the taglet.
The following example inserts the To Do taglet after Parameters and
ahead of Throws in the generated pages.
-
-taglet com.sun.tools.doclets.ToDoTaglet
-tagletpath /home/taglets
-tag return
-tag param
-tag todo
-tag throws
-tag see
Alternately, you can use the -taglet option in place of its
-tag option, but that might be difficult to read.
- -tagletpath tagletpathlist
-
Specifies the search paths for finding taglet class files.
The tagletpathlist can contain multiple paths by separating
them with the platform path separator (; on Windows; :
on other platforms.) The javadoc tool searches all
subdirectories of the specified paths.
-
- -top html-code
-
Specifies the text to be placed at the top of each output file.
-
- -use
-
Creates class and package usage pages.
Includes one Use page for each documented class and package.
The page describes what packages, classes, methods, constructors and
fields use any API of the specified class or package.
Given class C, things that use class C would include subclasses of C,
fields declared as C, methods that return C, and methods and
constructors with parameters of type C.
For example, you can look at the Use page for the String type.
Because the getName method in the java.awt.Font class
returns type String, the getName method uses
String and so the getName method appears on the Use
page for String.
This documents only uses of the API, not the implementation.
When a method uses String in its implementation, but
doesn't take a string as an argument or return a string, that
isn't considered a use of String.To access the generated
Use page, go to the class or package and click the Use link in
the navigation bar.
-
- -version
-
Includes the version text in the generated docs.
This text is omitted by default.
To find out what version of the javadoc tool you are using, use
the -J-version option.
-
- -windowtitle title
-
Specifies the title to be placed in the HTML <title> tag.
The text specified in the title tag appears in the window title
and in any browser bookmarks (favorite places) that someone creates for
this page.
This title shouldn't contain any HTML tags because the browser
doesn't interpret them correctly.
Use escape characters on any internal quotation marks within the
title tag.
If the -windowtitle option is omitted, then the
javadoc tool uses the value of the -doctitle option
for the -windowtitle option.
For example,
javadoc -windowtitle "My Library" com.mypackage.
-
ADDITIONAL OPTIONS PROVIDED BY THE STANDARD DOCLET
The following are additional options provided by the standard doclet and
are subject to change without notice.
Additional options are less commonly used or are otherwise regarded as
advanced.
- -Xdoclint
-
Enables recommended checks for problems in documentation comments.
-
- -Xdoclint:(all|none|[-]group)
-
Enable or disable specific checks for bad references, accessibility
issues, missing documentation comments, errors in documentation comment
syntax and missing HTML tags.
-
This option enables the javadoc tool to check for all
documentation comments included in the generated output.
You can select which items to include in the generated output with the
standard options -public, -protected,
-package and -private.
When the -Xdoclint option is enabled, it reports issues with
messages similar to the javac command.
The javadoc tool prints a message, a copy of the source line,
and a caret pointing at the exact position where the error was detected.
Messages may be either warnings or errors, depending on their severity
and the likelihood to cause an error if the generated documentation were
to be run through a validator.
For example: missing documentation comments, duplicate information, and
extraneous comments do not cause the javadoc tool to generate
invalid HTML, so these issues are reported as warnings; syntax errors,
missing required HTML end tags, and references to missing or misspelled
elements cause the javadoc tool to generate invalid output, so
these issues are reported as errors.
-Xdoclint option validates input comments based upon the
requested markup.
By default, the -Xdoclint option is enabled.
Disable it with the option -Xdoclint:none.
The following options change what the -Xdoclint option
reports:
- •
-
-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
The group variable has one of the following values:
- •
-
accessibility: Checks for the issues to be detected by an
accessibility checker (for example, no caption or summary attributes
specified in a <table> tag).
- •
-
html: Detects high-level HTML issues, such as putting block
elements inside inline elements, or not closing elements that require an
end tag.
The rules are derived from the HTML 4 Specification
[https://www.w3.org/TR/html4/] or the HTML 5 Specification
[http://www.w3.org/TR/2014/REC-html5-20141028/] based on the standard
doclet html output generation selected.
This type of check enables the javadoc tool to detect HTML
issues that some browsers might not interpret as intended.
- •
-
missing: Checks for missing documentation comments or tags (for
example, a missing comment or class, or a missing @return tag
or similar tag on a method).
- •
-
reference: Checks for issues relating to the references to Java
API elements from documentation comment tags (for example, item not
found in @see, or a bad name after @param).
- •
-
syntax: Checks for low level issues like unescaped angle
brackets (< and >) and ampersands (&) and
invalid documentation comment tags.
You can specify the -Xdoclint option multiple times to enable
the option to check errors and warnings in multiple categories.
Alternatively, you can specify multiple error and warning categories by
using the preceding options.
For example, use either of the following commands to check for the HTML,
syntax, and accessibility issues in the file filename.
-
javadoc -Xdoclint:html -Xdoclint:syntax -Xdoclint:accessibility
filename
-
javadoc -Xdoclint:html,syntax,accessibility filename
Note:
The javadoc tool doesn't guarantee the completeness of
these checks.
In particular, it isn't a full HTML compliance checker.
The goal of the -Xdoclint option is to enable the
javadoc tool to report majority of common errors.
The javadoc tool doesn't attempt to fix invalid input, it
just reports it.
- -Xdoclint/package:[-]packages
-
Enables or disables checks in specific packages.
packages is a comma separated list of package specifiers.
A package specifier is either a qualified name of a package or a package
name prefix followed by *, which expands to all sub packages of
the given package.
Prefix the package specifier with - to disable checks for the
specified packages.
-
- -Xdocrootparent url
-
Replaces all @docRoot items followed by/.. in Javadoc
comments with the url.
-
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- CONFORMANCE
-
- OPTIONS FOR JAVADOC
-
- EXTENDED OPTIONS
-
- STANDARD DOCLET OPTIONS
-
- ADDITIONAL OPTIONS PROVIDED BY THE STANDARD DOCLET
-
This document was created by
man2html,
using the manual pages.
Time: 08:55:18 GMT, December 16, 2021