2017-02-08 27 views
0

在我們的產品UI中,我們爲用戶(即開發人員)提供了一種編寫Java代碼的方法,用於定製。在保存表單時,我想調用該java源代碼上的findbugs靜態分析,並顯示結果。在這種情況下,我怎樣才能將Findbugs與我的產品整合?有人可以建議調用哪些API嗎?在一段Java源代碼上動態調用findbug掃描

+0

歡迎來到Stack Overflow!你可以先參加[遊覽]並學習[問]一個很好的問題,然後創建一個[mcve]。這使我們更容易幫助你。 – Katie

+0

只是需要注意的一點,findbugs不能在java源代碼上運行。 – MeBigFatGuy

回答

0

似乎有一個主要的入口點在 edu.umd.cs.findbugs.FindBugs2;一旦實例化,您可以添加要通過setProject()進行掃描的源,請撥打​​,並通過getBugReporter()查看結果。這是低級別的做事方式 - 您基本上會將FindBugs與您的應用程序捆綁在一起(注意可能的授權問題),並在內部調用它。我可能會錯過上面的一些步驟 - 因爲我只瀏覽了文檔,其中沒有包含此用例的代碼示例。

通過調用FindBugs作爲外部應用程序,可以通過java -jar <path-to-findbugs-jar> -auxclasspath <classpath needed for analysis> -analyzeFromFile <file with one filename to analyze per line>實現更容易的集成;應用程序隨即打開,用戶可以自由探索突出顯示的錯誤。 command-line options的完整列表 - 甚至可以讓FindBugs生成報告,然後僅顯示報告,而不必啓動FindBugs UI。