Maven與findbugs

          公司最近嚴抓軟件質量問題,我抽空了解了下提高代碼質量的一些開源工具。其中一個就是findbugs。使用findbugs有很多方式,比如:安裝eclipse findbugs插件,通過maven調用生成報告。今天主要演示下mavenfindbugs集成。

           

          第一步:下載maven,我使用的是maven3。把maven的命令加入PATH環境變量。

          第二步:創建一個普通的maven java工程。命令如下:mvn archetype:maven-archetyp-quickstart –DgroupId=com.tianya –DartifactId=baowu。如果正常執行的話會生成如下結構的一個工程。

          第三步:我們看下pom文件

          <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

              xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

              <modelVersion>4.0.0</modelVersion>

              <groupId>com.tianya</groupId>

              <artifactId>baowu</artifactId>

              <version>0.0.1-SNAPSHOT</version>

              <packaging>war</packaging>

           

              <!--配置插件來源 -->

              <pluginRepositories>

                 <pluginRepository>

                     <id>Codehaus repository</id>

                     <url>http://repository.codehaus.org/</url>

                 </pluginRepository>

              </pluginRepositories>

             

              <build>

                 <plugins>

                     <plugin>

                        <groupId>org.codehaus.mojo</groupId>

                        <artifactId>findbugs-maven-plugin</artifactId>

                        <version>2.3.2</version>

                        <configuration>

                            <!-- <configLocation>${basedir}/springside-findbugs.xml</configLocation> -->

                            <threshold>High</threshold>

                            <effort>Default</effort>

                            <findbugsXmlOutput>true</findbugsXmlOutput>

                             <!-- findbugs xml輸出路徑-->         <findbugsXmlOutputDirectory>target/site</findbugsXmlOutputDirectory>

                        </configuration>

                     </plugin>

                 </plugins>

              </build>

          </project>

           

          我來解釋下xml配置:

          配置插件下載地址

          <!--配置插件來源 -->

              <pluginRepositories>

                 <pluginRepository>

                     <id>Codehaus repository</id>

                     <url>http://repository.codehaus.org/</url>

                 </pluginRepository>

              </pluginRepositories>

           

          由于maven核心做的事情都是抽象的構建過程,很多實際的工作都是具體的插件來實現。所以很顯然,maven以插件的方式集成findbugs

          <plugin>

                        <groupId>org.codehaus.mojo</groupId>

                        <artifactId>findbugs-maven-plugin</artifactId>

                        <version>2.3.2</version>

                        <configuration>

                            <!-- <configLocation>${basedir}/springside-findbugs.xml</configLocation> -->

                            <!-- findbugs xml輸出-->                   <findbugsXmlOutput>true</findbugsXmlOutput>

                             <!-- findbugs xml輸出路徑-->         <findbugsXmlOutputDirectory>target/site</findbugsXmlOutputDirectory>

                        </configuration>

                     </plugin>

           

          大家注意到了findbugs插件里,我注釋掉了一句話,其實這句話就是可以使用自己的fingbugs配置來做檢查。我用的是springside的一個xml文件。

           

          第四步:配置好相關文件之后,接下來就是執行相關命令了。

          mvn compile findbugs:findbugs生成報告。報告生成的地址就是${項目根目錄}/target/site。也可以通過mvn findbugs:gui gui界面查看findbugsreport

          posted on 2012-04-14 18:55 yangpingyu 閱讀(7214) 評論(0)  編輯  收藏 所屬分類: java基礎

          <2012年4月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          導航

          統計

          常用鏈接

          留言簿

          隨筆分類

          隨筆檔案

          收藏夾

          linux

          產品交互

          分析,設計,架構

          安全

          技術牛人

          數據庫

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 连江县| 海林市| 和林格尔县| 榆树市| 通渭县| 柘荣县| 博野县| 芦山县| 阳山县| 上林县| 陕西省| 绥江县| 土默特右旗| 莱芜市| 凤冈县| 凌云县| 遵义县| 北碚区| 定陶县| 铅山县| 佳木斯市| 辽源市| 安西县| 梁河县| 洞口县| 禹城市| 收藏| 申扎县| 张家港市| 高清| 罗山县| 五台县| 紫金县| 广灵县| 夏邑县| 内江市| 彰化县| 汾西县| 贵溪市| 高要市| 上林县|