在Eclipse上链接时,由maven-javadoc-plugin生成的库javadocs不起作用

时间:2016-04-06 14:09:59

标签: java maven javadoc maven-plugin

UPDATE1:这不仅仅是参数名称,eclipse根本不显示任何javadoc信息。当您将鼠标悬停在某个班级上时,不会显示任何内容。

UPDATE2:我的eclipse版本是4.2.0。

我正在使用Eclipse,我想将库的javadoc附加到我的项目中,这样当我实现一个接口并选择添加未实现的方法 方法参数名称正确显示而不是 arg0 arg1 等。

问题是:

  • 当我通过eclipse生成javadocs(Project> Generate Javadocs ...)并将其链接到我的项目它可以工作,换句话说,我看到正确的方法参数名称

  • 当我通过maven-javadoc-plugin生成javadoc并将其链接到我的项目它不起作用时,换句话说,我看到 arg0 arg1

也许我没有正确配置我的maven-javadoc-plugin?在 pom.xml 的配置下面:

  <plugin>
    <artifactId>maven-javadoc-plugin</artifactId>
    <version>2.8</version>
    <executions>
      <execution>
        <id>attach-javadocs</id>
        <goals>
          <goal>jar</goal>
        </goals>
      </execution>
    </executions>
  </plugin>

任何帮助将不胜感激。没有看到参数名称非常糟糕。

1 个答案:

答案 0 :(得分:2)

这与仅在版本4.3中修复的this eclipse bug有关。基本上eclipse停止在以下行处理javadoc html文件:

<meta http-equiv="Content-Type" content="text/html" charset="UTF-8">

因为它期望内容属性中的字符集如下所示:

 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

我认为有一种方法可以告诉maven javadoc插件更改此元标记,但您可以从maven下面运行ANT任务来修复所有的html文件:

<replace dir="target/apidocs">
    <include name="**/*.html"/>
    <replacetoken><![CDATA[<meta http-equiv="Content-Type" content="text/html" charset="UTF-8">]]></replacetoken>
    <replacevalue><![CDATA[<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">]]></replacevalue>
</replace>