ant + findbugs 安裝及實現靜態程式碼檢查,並生成HTML檢查報告
1、ant + findbugs安裝
通過Eclipse或者MyEclipse繼承ant、findbugs外掛。外掛可以到網上去下。
注:findbugs最好是下載1.3.9版本,如果是其他版本,可能在執行的時候會提示版本衝突錯誤!
2、通過findbugs做靜態程式碼檢查,此處可以說有兩種方式。
A、直接生成HTML報告形式,在專案根目錄下新建檔案build.xml,將如下程式碼複製進去
說明:<project name="DHOME_ANDRIOD_CodeCheck" default="findbugs"> <property name ="findbugs.home" value ="C:\Program Files\MyEclipse 6.5\myeclipse\eclipse\plugins\edu.umd.cs.findbugs.plugin.eclipse_1.3.9.20090821"/> <path id="findbugs.lib"> <fileset dir ="${findbugs.home}/lib"> <include name ="findbugs-ant.jar"/> </fileset> </path> <taskdef name="findbugs" classpathref ="findbugs.lib" classname="edu.umd.cs.findbugs.anttask.FindBugsTask"></taskdef> <target name ="findbugs"> <findbugs home ="${findbugs.home}" jvmargs="-Xmx884m" output ="html" outputFile ="D:/findbugs.html"> <class location ="WebRoot\WEB-INF\classes\com"/> <auxClasspath path="${findbugs.home}/lib/findbugs-ant.jar"/> <auxClasspath> <!--<fileset dir="Z:/BR_Telfort_201000729/BS/CUSTCARE/webapp/WEB-INF/lib" includes="**/*.jar" /> --> </auxClasspath> <sourcePath path ="src"/> </findbugs> </target> </project>
findbugs.home 是下載的findbugs外掛存放的路徑,我的是在MyEclipse6.5下,即value中的值;
findbugs.lib 是findbugs執行依賴的jar包存放路徑(要將findbugs.jar跟findbugs-ant.jar)拷到findbugs外掛的lib目錄下
taskdef 定義ant任務,name是ant任務名稱,classpathref只想jar包路徑
target 具體的ant任務output指定輸出的格式,class指定要檢查的程式碼存放的路徑(因為findbugs是檢查的.class檔案,所以只想編譯後的class檔案所在的路徑),auxClasspath是findbugs依賴但是不希望其檢查的jar包,sourcePath
指定原始碼路徑
這樣設定之後,直接右鍵改build.xml檔案選擇ant build即可生成HTML程式碼檢查報告
B、直接在MyEclipse中右鍵需要檢查的類或者包選擇find bugs(如果你外掛安裝正確的話) 即可
3、生成HTML檢查報告,也有兩種方式可以生成報告
A、即2、中的A
B、新增檢查規則(本人不會再xml中新增,就用了下面這個方法)
1)右鍵要檢查的專案,選擇properties,點選findbugs選項在Detector configration中選擇需要或者不需要的檢查規則項即可
2)通過2、中的B檢查完成後開啟MyEclipse的 Bug Explorer 檢視發現的bug ,右鍵專案名稱,選擇save xml會將檢查結果儲存成一個檔案(我命名為findbugs),修改檔案的字尾名為xml(findbugs.xml)
3)在專案根目錄下新建build.xml檔案,如果已存在,可以將原來的重新命名下,新增以下資訊,右鍵執行即可生成HTML報告
<project name="lt" default="convertHTML" basedir=".">
<property name="findbugs.home"
value="C:\Program Files\MyEclipse 6.5\myeclipse\eclipse\plugins\edu.umd.cs.findbugs.plugin.eclipse_1.3.9.20090821" />
<property name="findbugs.file" value="D:/findbugs.xml" />
<property name="findbugs.desthtml" value="D:/findbugs.html" />
<path id="findbugs.lib">
<fileset dir="${findbugs.home}/lib">
<include name="findbugs-ant.jar"/>
</fileset>
</path>
<taskdef name="findbugs" classpathref ="findbugs.lib" classname="edu.umd.cs.findbugs.anttask.FindBugsTask" />
<taskdef name="convertXmlToText" classname="edu.umd.cs.findbugs.anttask.ConvertXmlToTextTask">
<classpath refid="findbugs.lib" />
</taskdef>
<target name="convertHTML" >
<!--
<filterBugs home="${findbugs.home}" output="filterBugs.html" withmessages="true" >
<datafile name="${findbugs.file}"/>
</filterBugs>
-->
<convertXmlToText home="${findbugs.home}"
input="${findbugs.file}"
output="${findbugs.desthtml}"
format="html:default.xsl">
</convertXmlToText>
</target>
</project>
相關推薦
ant + findbugs 安裝及實現靜態程式碼檢查,並生成HTML檢查報告
1、ant + findbugs安裝 通過Eclipse或者MyEclipse繼承ant、findbugs外掛。外掛可以到網上去下。 注:findbugs最好是下載1.3.9版本,如果是其他版本,可能在執行的時候會提示版本衝突錯誤! 2、通過findbugs做靜態程式碼檢查
Python3 + Appium + 安卓模擬器 實現APP自動化測試,並生成測試報告
概述 本文主要分為以下幾個部分 安裝Python3 安裝Python3的Appium庫 安裝Android SDK 安裝JDK 安裝Appium 安裝模擬器 編寫測試指令碼並生成測試報告 正文 一、安裝Python3 直接登入Python官網https://
ANT呼叫JMeter執行指令碼並生成html測試報告
1、 下載解壓ANT 2、 下載解壓JMeter 3、 設定環境變數:ANT_HOME=ANT解壓的主目錄,JMETER_HOME= JMETER解壓的主目錄,將%ANT_HOME%\bin;加入PATH中 4、 將JMeter目錄下的apache
jquery實現可編輯表格,並生成json結果
實現效果如下,在編輯表格的同時可以實現欄位json內容的自動變化,點選提交可以儲存到後臺,頁面載入的時候自動解析json並載入表格內容。該程式碼解析和載入功能都用前端js實現,簡化了後臺程式碼邏輯。 定義要操作的表格頭: <input readonly="read
墨卡託投影座標系(Mercator Projection)原理及實現C程式碼
轉:https://www.cnblogs.com/DHUtoBUAA/p/6706642.html 墨卡託投影是一種“等角正切圓柱投影”,荷蘭地圖學家墨卡託(Mercator)在1569年擬定:假設地球被圍在一箇中空的圓柱裡,其赤道與圓柱相接觸,然後再假
Nginx原始碼編譯安裝及實現負載均衡
Nginx (engine x) 是一個高效能的HTTP和反向代理服務,工作在網路的7層之上,可以針對http應用做一些分流的策略, 比如針對域名、目錄結構,它的正則規則比HAProxy更為強大 和靈活,這也是它目前廣泛流行的主要原因之一,Nginx單憑 這點可利用的場合就
Jenkins安裝及配合GitLab程式碼自動部署
** git—倉庫搭建及使用 ** ################################################################### 建立使用者 [kiosk@foundation6 ~]$ git confi
Mac: mac git 的安裝 及實現自動補全
htm use path raw spa file con get all 1.檢查是否裝了brew $ brew list如果沒有,拷貝以下命令到終端 回車.可以安裝好brewruby -e "$(curl -fsSL https://raw.githubusercont
FreeSwitch 1.9.0 安裝配置及使用MySQL管理賬戶,並實現視訊通話
最近因為專案上的需要入手了FreeSwitch。 之前嘗試過Asterisk,但個人感覺對H264的支援不是特別友好,所以用才選擇了FreeSwitch。 安裝FreeSwitch前的準備工作: 1、VMare上安裝一個CentOS的虛擬機器 安裝CentOS 7:
mac git 的安裝 及實現自動補全
完成 隱藏文件 con span 說明 killall github -html --help 1.檢查是否裝了brew $ brew list 如果沒有,拷貝以下命令到終端 回車.可以安裝好brew ruby -e "$(curl -fsSL https
d指針在Qt上的應用及實現(有圖,很清楚)
rhel -name spa 自動 版本庫 留空 擴展 vat 因此 Qt為了使其動態庫最大程度上實現二進制兼容,引入了d指針的概念。那麽為什麽d指針能實現二進制兼容呢?為了回答這個問題,首先弄清楚什麽是二進制兼容?所謂二進制兼容動態庫,指的是一個在老版本庫下運行的程序,在
lua裡實現類似巨集定義,動態生成程式碼
其實就是用了 lua 的 loadstring 功能。 1.把需要動態生成的程式碼拼接成為一個字串。 str 2. loadstring(str) 這個只是解析了程式碼,相當於一個function 需要 執行一下才會生效
java中靜態變數,靜態程式碼塊,靜態方法,例項變數,匿名程式碼塊的載入順序
1. java中靜態變數,靜態程式碼塊,靜態方法,例項變數,匿名程式碼塊 在Java中,使用{}括起來的程式碼稱為程式碼塊,程式碼塊可以分為以下四種: (1)普通程式碼塊:就是類中方法的方法體 public void xxx(){ //code }
Spring MVC實現靜態資源訪問,viewcontroller,攔截器,路徑匹配等配置
spring mvc 定製配置需要配置類繼承 一個webmvcconfigureradapter ,通過重寫這個類的方法,來完成常用的配置 包括靜態資源 , controller ,攔截器,路徑匹配的配置等等 具體程式碼如下 @Component public class WebMv
使用Docker安裝Seafile雲盤專業版,並配置域名及SSL證書
說明:Seafile是一個開源的檔案雲端儲存平臺,主要是為團隊設計的,功能很多,使用者可加密資料庫,且密碼不會儲存在伺服器端,管理員也無權訪問你的檔案。使用者之間也可以共享和同步檔案,方便了團隊協同工作。其版本分為開源免費版和專業版,兩者區別挺大的,比如專業版多了搜尋、叢集、亞馬遜S3、Ceph、阿里雲
Java基礎---面向物件(面向物件,類,物件,匿名物件,封裝,建構函式,構造程式碼塊,this,static,main,幫助文件,靜態程式碼塊,單例)
一. 面向物件概念: 面向物件其實是一種思考的思想,早期思想是面向過程。 面向過程注重的是過程,過程所涉及的行為,也就是功能。 【例項】:面向過程: 1. 把冰箱開啟 2. 把大象放入 3. 冰箱關起來 面向物件: 開啟冰箱,儲存,關閉都是對冰箱的操作,是冰箱的行為
MAC office2016 安裝及啟用(試了一下,靠譜, 非常感謝原作者)
非常感謝原作者。 一、安裝包下載地址 http://officecdn.microsoft.com/sg/C1297A47-86C4-4C1F-97FA-950631F94777/OfficeMac/Microsoft_Office_2016_15
靜態程式碼塊,構造程式碼塊,普通程式碼塊
package practice; public class CodeBlock { public static void main(String[] args) { new Work().method(); System.out.println("-------
java中靜態變數,靜態方法,靜態程式碼塊,構造程式碼塊,構造方法...執行順序
public class TestExeOrder { public TestExeOrder(){ System.out.println("類的構造方法執行了..."); } { System.out.println("構造程式碼塊執行了
Java中靜態成員變數,靜態程式碼塊,靜態內部類何時被初始化?
關於這個問題,本文不扯理論,直接上程式碼,通過結果來驗證結論,廢話少說,測試程式碼如下: public class StaticTest { public static StaticMember staticMember = new Static