javadoc仅适用于package-info.java

问题描述:

我有一种情况,我想在没有类的项目中执行javadoc。它只有一个package的package-info.java。当执行javadoc中,给出了以下错误:javadoc仅适用于package-info.java

An error has occurred in JavaDocs report generation:Exit code: 1 - javadoc: error - No public or protected classes found to document. 

有没有什么办法,迫使它只能处理package-info.java(除了明显的哈克解决方案:创建一个虚拟类,脚本的复制package.html等)?

我正在执行javadoc作为maven构建的一部分,因此maven-javadoc-plugin正在执行实际的javadoc命令。

+0

如果没有类,为什么需要包javadoc? – 2009-07-16 17:18:20

+0

我正在使用一个工具(具体阐述),它使用软件包doc作为自定义“splash”文档以生成更大网站的方式。 – StevenC 2009-07-16 18:32:33

没有办法让JavaDoc在空包上运行。有一个非常旧的bug为此标记为“已关闭,不会修复”。

在这个bug中,解决方法几乎是你提到的显而易见的黑客,创建一个默认范围的空类。除非您强制使用-package或-private,否则该类不会包含在javadoc中。

/** hack to generate package javadoc */ 
class PlaceHolder {}