2016-01-29 84 views
2

按照link,我寫了下面的代碼:的javadoc @hide不能工作

/** 
* @hide 
* */ 
public void myMethod() { 
    // do something 
} 

當我使用命令來生成文檔:

$ javadoc -locale en_US -encoding UTF-8 -charset UTF-8 -d doc xxx.java 

的文檔仍然有myMethod item。那麼如何隱藏myMethod?我錯過了什麼 ?

回答

2

您正在使用Doclava標籤,但正在使用標準doclet生成API文檔。

大廈Doclava

的Doclava source附帶了一個Ant腳本來構建的doclet。 「jar」任務將構建一個包含Doclava和所有必需依賴項的jar。

使用Doclava用的Javadoc

命令行參數傳遞給的Javadoc使用Doclava是:-doclet com.google.doclava.Doclava -docletpath ${jar.file}

按照官方Javadoc FAQ,躲在公共成員是目前無法在直接辦法。

有時您可能需要公開一個類或方法,以便可以從其他包訪問它,而不是因爲您希望它成爲公共API的一部分。讓這些方法出現在文檔中僅僅會讓應用程序開發者感到困惑

目前沒有Javadoc選項可以從javadoc生成的文檔中隱藏,排除或禁止公共成員。

有幾個選擇:

  • 不包括源文件 - 你可以傳遞到了Javadoc只有源文件名,你想記錄所有類,並排除那些要忽略。注意這有文件的粒度,而不是類。因此,如果排除包含嵌套類的源文件,它們也將被排除。 (您可以將類的列表放在command line argument file中,而不是直接放在命令行中。)默認的Javadoc在命令行中傳遞包名時無法省略類。
  • 不包括單個類別 - 您可以使用Exclude Doclet。這比之前的選項具有更精細的粒度(類而不是源文件),並且使用起來會更自然,因爲您明確地在文件中列出了要排除的文件。
  • 不包括類,方法和字段 - yDoc Doclet具有此功能,您可以在源代碼中使用排除標記標記項目。另外,歡迎任何人擴展上面的Exclude Doclet的方法和領域 - 我們很樂意發佈它並將您的名字添加到學分中。

我們正在考慮@exclude作爲排除成員的建議標籤。

還檢查了Proposed Javadoc Tags page更多的信息到@exclude@hide

+0

感謝您的詳細信息。接受。 –