2011-05-06 78 views
15

我正在使用Javadoc插件創建一個自定義doclet,以便在我的Maven構建中運行,但現在我想在Eclipse中測試/調試Doclet。我怎樣才能做到這一點?如何在Eclipse中調試Doclet?

我是否必須以編程方式調用javadoc?如何?

+0

肖恩,很好的問題:我現在面臨調試的doclet的同樣的挑戰;儘管來自Eclipse開發小組的消息指向了一種相當醜陋的方法,但我認爲它花了30分鐘,但它工作。如果有人發現更簡單的方法,請發帖:-)。無論如何,+1肖恩的問題和鏈接。 – acostache 2011-05-31 07:38:15

+0

問題中的鏈接被破壞 – Omnipresent 2011-07-07 22:02:34

+0

爲true,將其刪除。無論如何這太糟糕了 – 2011-07-08 04:55:16

回答

12

你可以簡單地創建一個在您的doclet和呼叫的主要方法(例如,查看完整cmdling參考):

public class MyDoclet extends Doclet { 

    public static void main(String[] args) { 
     com.sun.tools.javadoc.Main.execute("-doclet " + MyDoclet.class.getName()); 
    } 
} 

,也可用於調試器。

您可能還需要添加-classpath參數,其中包含解析實際代碼所需的所有jar依賴項。

0

我收到錯誤消息@Jan答案

Error:(13, 35) java: reference to execute is ambiguous 
    both method execute(java.lang.String...) in com.sun.tools.javadoc.Main and method execute(java.lang.String,java.lang.String...) in com.sun.tools.javadoc.Main match 

改變這些代碼之後,它工作得很好

com.sun.tools.javadoc.Main.execute(new String[]{ 
       "-doclet", CustomDoclet.class.getName(), 
       "path/to/src/XXX.java" 
     });