2016-04-06 56 views
5

UPDATE1:它不僅僅是參數名稱,eclipse根本不顯示任何javadoc信息。當您將鼠標懸停在課程上時,不會顯示任何內容。在Eclipse上鍊接時,由maven-javadoc-plugin生成的庫javadocs不起作用

UPDATE2:我的eclipse版本是4.2.0。

我使用Eclipse和我想庫的Javadoc連接到我的項目,所以,當我實現一個接口和選擇的選項添加未實現的方法方法參數名正確顯示,而不是爲arg0ARG1

問題是:

  • 當我生成通過蝕的Javadoc(工程中的t>生成Javadocs ...)並將其鏈接到我的項目它的工作原理,換句話說,我看到了正確的方法參數名稱。

  • 當我產生過Maven的Javadoc的插件的javadoc,並將其鏈接到我的項目它不工作,換句話說,我看到爲arg0ARG1

也許我沒有正確配置我的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> 

任何幫助將不勝感激。沒有看到參數名稱是非常糟糕的。

+0

您是否嘗試過開裂打開jar文件和比較文件?他們有什麼不同?除此之外,我相信包括Eclipse在內的大多數IDE將主要依靠* source * jar來實現這種智能。 –

+0

這是一個好主意。我會做一個比較,看看我能找到什麼。但我不會分發資源,只是javadoc。 eclipse生成的javadocs工作正常,所以maven確實做了一些不同的事情。 –

回答

2

這與this eclipse bug只有在版本4.3中才固定。基本上蝕停止在下一行處理javadoc的HTML文件:

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

,因爲它期待的字符集的內容屬性,象下面這樣:

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

我不認爲有辦法告訴行家的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>