2012-10-06 74 views
4

FindBugs docs for Ant tasks有點混亂。傳統上,我總是通過Eclipse插件使用FindBugs,在那裏你只需選擇你的項目,然後點擊「FindBugs」來獲取報告。FindBugs Ant任務是否需要JAR?

隨着findbugs Ant任務,有一個嵌套<class>元件是:

A [n]的可選嵌套元素指定要分析的類。

根據我所看到的例子,看起來FB實際上要求您在運行FB任務之前首先對您的項目進行JAR測試。

有人可以證實這一點,並解釋什麼class元素是?對於像我這樣的新人來說,這種描述非常模糊。

其次,更重要的是,我的項目實際上是一個Java Web應用程序(WAR)文件。因此,如果我沒有弄錯,並且如果FB需要有JAR來進行分析,那麼我的策略是在<target name="findbugs">目標內創建我的項目的「臨時JAR」,並且有它只是由我編譯的所有Java類組成。這不會是可執行的,並且只會在滿足FB的前提下被刪除,並且會在以後的構建中被刪除。

我的基地在這裏嗎? Java Web應用程序構建者在其Ant構建中使用FB的標準操作過程是什麼?提前致謝!

+1

例如如何配置FB ANT任務罐子見http://stackoverflow.com/questions/12744819/findbugs-issue-with-ant/12759178#12759178 –

回答

0

如果你下載FindBugs本身(在我的情況下,版本2.0.1),並從包含的批處理文件啓動gui,它會限制文件類型,你可以放入項目中進行分析:在「New Project」對話框中,「jar,戰爭,耳朵,拉鍊,sar」。 所以,我想,壓縮你的.class文件就足夠了 - 畢竟,.jar只是你的.class文件在它們的文件夾結構中的一個zip文件,加上了添加的清單文件。

但是,如果您打開一個包含非壓縮源文件的文件夾,FindBugs將嘗試分析。

[更新我終於找到了FindBugs ant任務來處理我的系統。它絕對適用於類文件。 讓它運行是一件非常麻煩的事情,因爲有一些棘手的問題需要閱讀源代碼來解決。例如,包括你自己的罐子是非常棘手的,例如,對於使用log4j日誌記錄,一些幫助你的參數沒有記錄,並且報告錯誤的最低等級是相當高的,並且不能像我經歷的那樣降低。如果您有任何問題,請告訴我,我很樂意提供幫助。 ]

+0

我在使用與ANT FindBugs的問題。我正在關注這個http://findbugs.sourceforge.net/manual/anttask.html,但無法運行。 – user3707644

+0

可以請你描述你遵循的步驟讓它運行。 thx – user3707644

+0

我很抱歉,但經過了所有這些年(切換公司和所有在此期間),我不能再訪問該代碼(或個人記憶,對於這一點):( 如果你指定你的具體問題(+輸出等),並在這個網站上提出另一個問題,但我可以看看 – RobertG