55.2. Javadoc Options
Overview
If the metadata for your Java API is provided by Javadoc, it is generally sufficient to specify the
fromJavadoc
element with no options. But in cases where you do not want to include the entire Java API in your API mapping, you can filter the Javadoc metadata to customize the content. In other words, because the API component Maven plug-in generates the API mapping by iterating over the Javadoc metadata, it is possible to customize the scope of the generated API mapping by filtering out unwanted parts of the Javadoc metadata.
Syntax
The
fromJavadoc
element can be configured with optional child elements, as follows:
<fromJavadoc> <excludePackages>PackageNamePattern</excludePackages> <excludeClasses>ClassNamePattern</excludeClasses> <excludeMethods>MethodNamePattern</excludeMethods> <includeMethods>MethodNamePattern</includeMethods> <includeStaticMethods>[true|false]<includeStaticMethods> </fromJavadoc>
Scope
As shown in the following extract, the
fromJavadoc
element can optionally appear as a child of the apis
element and/or as a child of api
elements:
<configuration> <apis> <api> <apiName>...</apiName> ... <fromJavadoc>...</fromJavadoc> </api> <fromJavadoc>...</fromJavadoc> ... </apis> </configuration>
You can define the
fromJavadoc
element at the following scopes:
- As a child of an
api
element—thefromJavadoc
options apply only to the API class specified by theapi
element. - As a child of the
apis
element—thefromJavadoc
options apply to all API classes by default, but can be overridden at theapi
level.
Options
The following options can be defined as child elements of
fromJavadoc
:
excludePackages
- Specifies a regular expression (
java.util.regex
syntax) for excluding Java packages from the API mapping model. All package names that match the regular expression are excluded; and all classes derived from the excluded classes are also ignored. Default value isjavax?\.lang.*
. excludeClasses
- Specifies a regular expression (
java.util.regex
syntax) for excluding API base classes from the API mapping. All class names that match the regular expression are excluded; and all classes derived from the excluded classes are also ignored. excludeMethods
- Specifies a regular expression (
java.util.regex
syntax) for excluding methods from the API mapping model. includeMethods
- Specifies a regular expression (
java.util.regex
syntax) for including methods from the API mapping model. includeStaticMethods
- If
true
, static methods will also be included in the API mapping model. Default isfalse
.