blob: 9bafb13c7416357ee9d663f79aa4596d36a1bb32 [file] [log] [blame]
------
Grouping Packages
------
Vincent Siveton
Maria Odea Ching
------
2009-09-12
------
~~ Licensed to the Apache Software Foundation (ASF) under one
~~ or more contributor license agreements. See the NOTICE file
~~ distributed with this work for additional information
~~ regarding copyright ownership. The ASF licenses this file
~~ to you under the Apache License, Version 2.0 (the
~~ "License"); you may not use this file except in compliance
~~ with the License. You may obtain a copy of the License at
~~
~~ http://www.apache.org/licenses/LICENSE-2.0
~~
~~ Unless required by applicable law or agreed to in writing,
~~ software distributed under the License is distributed on an
~~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
~~ KIND, either express or implied. See the License for the
~~ specific language governing permissions and limitations
~~ under the License.
~~ NOTE: For help with the syntax of this file, see:
~~ http://maven.apache.org/doxia/references/apt-format.html
Grouping Packages
To set a grouping for different packages, use the {{{../javadoc-mojo.html#groups}\<groups/\>}} parameter as shown
below. Each group will be consist of a \<title/\> and a \<packages/\> (as String). The \<packages/\> element supports
wildcard (*) to allow subpackages. If more than one package is to be included, each package name must be separated
colon (:) separated (similar to the
{{{http://docs.oracle.com/javase/7/docs/technotes/tools/windows/javadoc.html#group}Javadoc Tool}}).
For instance, with the following packages:
+-----+
com.mycompany.myapp
com.mycompany.myapp.package1
com.mycompany.myapp.package1.subpackage1
com.mycompany.myapp.package1.subpackage2
com.mycompany.myapp.package1.subpackage3
com.mycompany.myapp.package1.util
com.mycompany.myapp.package2
com.mycompany.myapp.package2.subpackage4
com.mycompany.myapp.package2.subpackage5
com.mycompany.myapp.package2.util
+-----+
You could have the following configuration:
+-----+
<project>
...
<reporting> (or <build>)
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>${project.version}</version>
<configuration>
<groups>
<group>
<title>Example 1 - Group Packages</title>
<!--
Include packages:
com.mycompany.myapp
com.mycompany.myapp.package1
BUT exclude all subpackages
-->
<packages>com.mycompany.myapp:com.mycompany.myapp.package1</packages>
</group>
<group>
<title>Example 2 - Group Packages</title>
<!--
Include packages:
com.mycompany.myapp.package1.subpackage1
com.mycompany.myapp.package1.subpackage2
com.mycompany.myapp.package1.subpackage3
com.mycompany.myapp.package1.util
BUT exclude the root package:
com.mycompany.myapp.package1
-->
<packages>com.mycompany.myapp.package1.*</packages>
</group>
<group>
<title>Example 3 - Group Packages</title>
<!--
Include packages:
com.mycompany.myapp.package1
com.mycompany.myapp.package1.subpackage1
com.mycompany.myapp.package1.subpackage2
com.mycompany.myapp.package1.subpackage3
com.mycompany.myapp.package1.util
-->
<packages>com.mycompany.myapp.package1*</packages>
</group>
<group>
<title>Example 4 - Group Packages</title>
<!--
Include packages:
com.mycompany.myapp.package1
com.mycompany.myapp.package1.subpackage1
com.mycompany.myapp.package1.subpackage2
com.mycompany.myapp.package1.subpackage3
com.mycompany.myapp.package1.util
com.mycompany.myapp.package2
com.mycompany.myapp.package2.subpackage4
com.mycompany.myapp.package2.subpackage5
com.mycompany.myapp.package2.util
-->
<packages>com.mycompany.myapp.package*</packages>
</group>
<group>
<title>Example 5 - Group Packages</title>
<!--
Include packages:
com.mycompany.myapp.package1.subpackage1
com.mycompany.myapp.package1.subpackage2
com.mycompany.myapp.package1.subpackage3
com.mycompany.myapp.package1.util
com.mycompany.myapp.package2.subpackage4
com.mycompany.myapp.package2.subpackage5
com.mycompany.myapp.package2.util
BUT exclude the root packages:
com.mycompany.myapp.package1
com.mycompany.myapp.package2
-->
<packages>com.mycompany.myapp.package1.*:com.mycompany.myapp.package2.*</packages>
</group>
<group>
<title>Example 6 - Group Packages</title>
<!--
Include nothing.
The packages com.mycompany.myapp.package1.util and com.mycompany.myapp.package2.util
will be in "Other Packages" group
-->
<packages>*.util.*</packages>
</group>
</groups>
...
</configuration>
</plugin>
...
</plugins>
...
</reporting> (or </build>)
...
</project>
+-----+