最近要对一个项目结构如下的Maven项目生成JavaDoc文档。
Project
|-- pom.xml
|-- Module1
| `-- pom.xml
|-- Module2
| `-- pom.xml
|-- Module3
|-- pom.xml
这个就需要用到本文将要提出的一个Maven插件:javadoc。
插件的基本配置很简单:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>2.9.1</version> </plugin>
而我们现在是一个多模块的Maven项目,那么就需要一些额外的配置来完成此操作:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>2.9.1</version> <configuration> <aggregate>true</aggregate> </configuration> </plugin>
现在问题来了:
我们的类中的方法注释如下
/** * @author : 张三 * @group : group * @Date : 2014-01-26 21:14:49 * @Comments : 页面所含操作增删改查的ejb接口 * @Version : 1.0.0 */ public interface IOperationBean { /** * @MethodName : getOperationByID * @Description : 根据Id获得页面所含操作 * @param ID 页面所含操作ID */ PageOperation getOperationByID(String ID); }
经过实验,要想像jdk那样让方法的描述紧跟在方法名后面,是需要这样添加注释的:
/** * 根据Id获得页面所含操作 * @param ID 页面所含操作ID */ PageOperation getOperationByID(String ID);
而这次问题的出现,还是源于我们对于JavaDoc生成不熟悉。
废话不多说,直接看例子:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>2.9.1</version> <configuration> <aggregate>true</aggregate> <tags> <tag> <name>Description</name> <placement>a</placement> <head>用途</head> </tag> </tags> </configuration> </plugin>
1.name为你Java代码中的注解的名字
2. placement这个在官网上有8种,我也自己试了下,其实这个就是说你要把哪些(方法、字段、类)上面的注解放到JavaDoc中
3.head,如果不写这个,用的就是name,如果写了,那么显示效果如下:
这样,你就既可以定义自己的注释规范,又可以生成相应的JavaDoc文档了
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>2.9.1</version> <configuration> <reportOutputDirectory>../myoutput</reportOutputDirectory> <destDir>myapidocs</destDir> </configuration> </plugin>
多模块Maven项目如何使用javadoc插件生成文档,布布扣,bubuko.com
原文:http://blog.csdn.net/jianxin1009/article/details/35269501