簡體   English   中英

如何阻止Javadoc使用完全限定名稱?

[英]How to stop Javadoc from using fully qualified name?

我正在使用Javadoc工具記錄一些代碼,並且結果使用系統類的完全限定名稱,例如java.lang.String 有沒有一種方法可以專門針對java.*javax.*繼承體系中的類阻止這種情況?

例如,如下所示的方法定義:

    * @param field String to write.
    * @throws IOException If the underlying stream throws an exception.
    */
   public void writeField( String field ) throws IOException {
      // etc.

產生如下的Javadoc輸出:

writeField

public void writeField​(java.lang.String field) throws java.io.IOException

    ...etc.

Parameters:
    field - String to write.
Throws:
    java.io.IOException - If the underlying stream throws an exception.

我希望對java.lang.String的引用只是String ,對java.io.IOException的引用同樣只是IOException

有任何想法嗎?


編輯和更新。 可接受的答案如下:

在NetBeans 10中,我要解決此問題的方法是轉到“項目”視圖,然后切換到“文件”視圖。 然后在項目文件中,找到nbproject/project.properties並打開該文件(右鍵單擊,選擇“打開”)。

在屬性視圖中,向下滾動到左側,直到看到javadoc.additionalparam 然后將以下內容添加到該屬性的右側(在我的情況下,其值為空) -link https://docs.oracle.com/en/java/javase/11/docs/api/

然后保存(control-S)文件並進行構建。 Javadocs現在看起來像我想要的。 謝謝Slaw!

如果Javadoc無法鏈接到class / method / etc,則會輸出標准名稱。 為了僅輸出簡單名稱,您必須鏈接到外部Javadoc。 這是通過javadoc工具的-link <url>命令行選項完成的。 要鏈接到SE類(即java.*javax.* ),一種選擇是使用:

javadoc -link https://docs.oracle.com/en/java/javase/11/docs/api/ [...]

其中[...]是命令行的其余部分。 您可以將URL更改為指向其他Java版本(例如Java 8而不是Java 11)。

還有一個-linkoffline <url1> <url2>選項。

注意:我相信這兩個選項都是由“標准doclet”提供的。 如果不使用標准doclet,則這些選項可能不可用或可能會有所不同。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM