56.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—the fromJavadoc options apply only to the API class specified by the api element.
  • As a child of the apis element—the fromJavadoc options apply to all API classes by default, but can be overridden at the api 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 is javax?\.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 is false.