2010-01-30 28 views
1

我想寫一個規則強制一個包中包含與特定表達Javadoc註釋,如:定製PMD規則 - 檢查包註釋到位

/** 
* Example Expression 
*/ 

有誰知道我會怎麼寫這種規則使用AbstractJavaRule類。我看過ASTPackageDeclaration,但這似乎沒有我想要的。

許多在此先感謝...

回答

1

PMD使用JavaCC的各Java文件解析成抽象語法樹。通常用於編譯的解析器只是刪除註釋,並且從我可以在頁面上收集的內容中可以看出,PMD也正在放棄AST的註釋。

但是看着PMD論壇,它確實看起來像comments are preserved as a SPECIAL_TOKEN,但很難將它們與它們所關聯的AST節點對齊。所以你可能很難寫這條規則。你有沒有看過Checkstyle?它有一個RegexpHeader rule可以做你想做的。

+0

非常感謝,謝謝。我今天會看看是否可以通過PMD獲得評論。我在設計規則部分看到有一個UncommentedEmptyMethod的檢查。看起來很有把握,如果我失敗了,我會選擇Checkstyle並嘗試一下。 – Jon 2010-01-30 19:19:50