2011-09-01 64 views
3

我一直在試圖寫我自己的maven reporting插件來生成運行'mvn站點'時測試的信息。 文件test_report.html由以下代碼創建,但該頁面不包含帶有doxia接收器API的任何標題或文本。如何獲得Maven報告插件以使用doxia API生成報告?

public class TestDocMojo extends AbstractMavenReport { 

    public String getOutputName() { 
     return "test_report"; 
    } 

    public void executeReport(Locale locale) throws MavenReportException { 
    Sink sink = getSink(); 
    sink.head(); 
    sink.title("My maven site report"); 
     sink.text("Content here."); 
    sink.flush(); 
    sink.close(); 
    } 
} 

我一直在尋找這個例子:http://docs.codehaus.org/display/MAVENUSER/Write+your+own+report+plugin

回答

0

我認爲最好的回答這個問題是給你看的報告插件的幾個工作示例的源。 '經典'是maven-project-info-reports-plugin的一部分,然後還有很多其他的。您可以在以下網址找到該來源:

http://svn.apache.org/viewvc/maven/plugins/tags/maven-project-info-reports-plugin-2.4 

當您找出錯過的內容時,請改進codehaus doc。

2

你犯了一些小錯誤。主要關閉東西了。

  1. title()只是打開在doxia寫作的標題。

    sink.title(); 
        sink.text("Hello"); 
        sink.title_(); 
    

會寫標題。

現在爲身體。

 sink.body(); 
     sink.rawText("Hello World"); 
     sink.body_(); 

最後的完整的例子: -

 Sink sink = getSink(); 
     sink.head(); 
     sink.title(); 

     sink.text("Hello"); 
     sink.title_(); 
     sink.head_(); 

     sink.body(); 
     sink.rawText("Hello World"); 

     sink.body_(); 
     sink.flush(); 
     sink.close(); 
+0

感謝的邁克。我會嘗試更新該項目。它在[Github]上(https://github.com/thomasfl/testdoc4j)。 – thomasfl