[英]Integrating static analysis tools with each other?
我今天偶然發現了JcReport ,我認為它完全符合您的要求。 至少,它以組合方式處理報告; 抑制仍然是特定於工具的。 該工具聲稱支持將 PMD、CPD、FindBugs、CheckStyle 和 Cobertura 的輸出自動集成到單個 HTML 報告中。
我還沒有嘗試過,但肯定打算很快。
另一種選擇是收集。 http://jbrugge.com/glean/
來自他們的網站: Glean 是一個 Ant 腳本框架,用於生成對團隊源代碼的反饋。 Glean 的目標是盡可能少地為您的構建周期添加反饋。 這些腳本驅動許多開源工具並收集生成的 HTML,供您部署到項目網站或其他一些常見的團隊區域。 在每日構建周期結束時添加它,這是一種將多個反饋源保持在一個位置最新的快速方法。
我不清楚在你的書中什么是單一的統一報告,但這就是我所做的。
我使用 Maven2 進行構建,您可以使用它配置一系列報告插件(包括 PMD、CPD、checkstyle、coberturba 等)。 Maven 還將為您的項目自動生成一個網站(站點插件),其中包含以易於導航的網頁格式顯示的所有報告。
如果您使用 Maven 構建您的項目,並且您將這些工具“插入”到您的 Maven 構建中,那么為構建生成的 Maven 報告將包括這些靜態分析工具的輸出。
感謝您的回復!
此處的目標是配置這些工具,使它們彼此以某種相似的方式運行。 這不僅僅是簡單地轉儲它們自動生成的任何報告,或者使用它們開箱即用的任何警告抑制提示。
例如,我將 PMD、Checkstyle 和 FindBugs 配置為按以下格式報告所有警告:
/absolute-path/filename:line-number:column-number: warning(tool-name): message
因此,警告可能如下所示:
/project/src/com/example/Foo.java:425:9: warning(Checkstyle): Missing a Javadoc comment.
此外,我的源代碼中的所有警告抑制都標有一個包含字符串“ SuppressWarnings
”的符號,無論靜態分析工具被抑制。 有時這個符號是一個注釋,有時它在注釋中,但它總是有那個名字。
我在這里更詳細地解釋這些想法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.