2016-11-03 63 views
0

我正在慢慢嘗試在現有代碼庫中引入對javadoc的checkStyle檢查。解析javadoc時檢查樣式錯誤

它似乎每次遇到一個描述列表,地圖等參數(@參數或@返回)。它不能解析代碼並拋出一個錯誤, 有沒有人有任何想法如何防止這種情況??

例如:

/** 
    * Process list of people. 
    * 
    * @param account the relevant account. 
    * @return List<People> the people we are interested in. 
    * @throws SQLException 
    */ 
    private static List<People> getPeople(Account account) throws SQLException {} 

,因此它不能解析

* @return List<People> the people we are interested in. 

,並創建錯誤:

error: Javadoc comment at column 18 has parse error. Missed HTML close tag 'People'. Sometimes it means that close tag missed for one of previous tags. 

嘗試應用不同的檢查,當出現這種情況,這jdoc呢/應通過檢查。

任何幫助將是巨大的:)

回答

1

根據Javadoc specification,@return不包括返回值的類型。您只需添加@return後返回的內容的說明。如果要包含該類型,則它是描述的一部分,因此需要轉義HTML字符(如<)(&gt;)。一個更好的選擇會是這樣的:

@return {@link List} of {@link People} 

(您不能鏈接到參數化類型,而應該鏈接到兩個泛型類型和參數類型)。

1

你或許應該逃避<>,使其不被視爲一個XML標籤,就像&lt;&gt;。請參見此問題How can I use "<" and ">" in javadoc without formatting?

+0

是的,但問題是我不希望此評論被視爲HTML。理想情況下,我不想更改代碼(這是有效的),我想調整checkstyle配置(以某種方式)來允許這一點。無論如何,謝謝:) –

+0

這不是一個有效的Javadoc,我相信。所以你將不得不完全停用Javadoc的checkstyle檢查。 –

+0

好吧,你的權利:) :(我認爲解決方案是「* \ @ @返回\ @代碼清單我們感興趣的人。」看起來不太好(乾淨的代碼風格)。 –