为什么我的生成的Javadocs看起来很糟糕?

7
我正在尝试为我的项目生成Javadoc HTML文件。我是通过Maven Javadoc插件(maven-javadoc-plugin)生成的。我使用的是Maven 2.2.1版本。所有必要的信息都已生成,但HTML格式非常糟糕,以至于我不想以这种方式发布它。这里是一个截图:
(注意:是的,我看到了“JavaScript在您的浏览器上被禁用”的消息。即使我点击IE 8关于活动内容的警告并启用它,也没有任何区别)
有各种不必要的换行符和基本格式很差。我错过了什么吗?我期望看到生成的Javadocs类似于在Eclipse中悬停在类或方法上并查看弹出的Javadoc面板时所见到的。
我尝试在我的POM文件中添加设置,但当涉及配置Javadoc生成器时,我确实不知道自己在做什么。这里是我目前拥有的设置(在元素内部):
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-javadoc-plugin</artifactId>
    <version>2.9</version>
    <configuration>
        <javadocExecutable>C:\Java\jdk1.7.0_05\bin\javadoc.exe</javadocExecutable>
        <javadocVersion>1.7</javadocVersion>
        <locale>en_US</locale>
        <show>package</show>
        <verbose />
    </configuration>
</plugin>

有什么建议吗?


更新:

Paulius提供的解决方案完全有效。我从我的<reporting>部分中删除了上面的部分,因为它是完全不必要的。我按照他下面指定的添加了新的<plugin>元素。现在,我的POM文件包含了这个新的块:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-javadoc-plugin</artifactId>
            <version>2.8.1</version>
            <executions>
                <execution>
                    <id>attach-javadocs</id>
                    <goals>
                        <goal>jar</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>           
        ...
    </plugins>
</build>

Here is what the fixed output looks like:

Properly generated Javadoc


3
可能是因为顶部的错误信息:“您的浏览器已禁用JavaScript”造成的吗? - assylias
看起来在你的浏览器中实际上“更好”:http://docs.oracle.com/javase/7/docs/api/ - PeterMmm
@PeterMmm 是的,那个Oracle页面上的Javadocs看起来好多了。格式很完美。 - Jim Tough
你可以尝试将插件部分放在<build/>标签内,然后运行mvn javadoc:javadoc,看看是否有所不同?理论上不应该有影响,但是站点插件可能会使用另一组CSS文件(也许)。我刚刚尝试了一下,得到了一些漂亮的API文档。 - maba
由于缺少样式表,它看起来是呈现不良的标记。如果您查看浏览器的开发者控制台,它是否显示正在尝试加载某些CSS并失败? - Mike Samuel
显示剩余3条评论
1个回答

2
尝试从reporting部分中删除maven-javadoc-plugin。如果您使用的是Maven 3,报告部分已被弃用,应将其删除。
尝试添加以下内容:
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-javadoc-plugin</artifactId>
    <version>2.8.1</version>
    <executions>
        <execution>
            <id>attach-javadocs</id>
            <goals>
                <goal>jar</goal>
            </goals>
        </execution>
    </executions>
</plugin>

将以下代码添加到您的maven插件部分并运行它。我像这样使用maven-javadoc-plugin,并且它会生成普通的javadocs。
希望这可以帮助您。

抱歉,我应该提到我正在使用Maven 2.2.1。最初我根本没有这个块。我只是添加它来尝试解决这个问题。 - Jim Tough

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接