Configuring Custom Javadoc Tags

To configure any custom tags, use <tags/> parameter as shown below. Each tag will be consist of a <name/>, a <placement/> and a <head/>. The <placement/> should be a combination of the letters Xaoptcmf:

  • X (disable tag)
  • a (all)
  • o (overview)
  • p (packages)
  • t (types, that is classes and interfaces)
  • c (constructors)
  • m (methods)
  • f (fields)

For instance, with the following configuration:

<project>
  ...
  <reporting> (or <build>)
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>3.11.1</version>
        <configuration>
          ...
          <tags>
            <tag>
              <name>todo</name>
              <!-- todo tag for all places -->
              <placement>a</placement>
              <head>To do something:</head>
            </tag>
          </tags>
          ...
        </configuration>
      </plugin>
    </plugins>
    ...
  </reporting> (or </build>)
  ...
</project>

and with the following todo tag in a class:

/**
 * Hello world!
 *
 * @todo complete me!
 */
public class App {}

the Javadoc tool will generate the following Javadoc:

public class App
extends Object

Hello world!

To do something:
    complete me!