Java代码质量监控工具Sonar安装
1.??代碼質量七宗罪
Sonar是一個代碼質量管理系統。它的幫助文檔開篇明義,提出了代碼質量的七宗罪。總結的比較到位。最好還是一看:
1.????????Bug和隱藏Bug(Bugs and Potential Bugs)
2.????????違反編碼規范(Coding Standards Breach)
3.????????復制粘貼(Duplications)
4.????????缺乏單元測試(Lack of Unit Tests)
5.????????惡劣的復雜度分布(Bad Distribution of Complexity)
6.????????意大利面式設計(Spaghetti Design)
7.????????凝視不足或過多(Not Enough or Too Many Comments)
2.??安裝Sonarserver
首先看一下sonar對安裝環境的需求,見文檔:
http://docs.codehaus.org/display/SONAR/Requirements
2.1. 安裝JRE
不再詳述。2.2. 安裝數據庫
Sonar支持MySQL、Oracle、PostgreSQL、SQL Server等多種數據庫,本文選取MySQL。
參考文檔:http://docs.codehaus.org/display/SONAR/Installing
2.3. 配置數據庫
Sonar啟動前須要數據庫中有特定的username和數據庫。下面為MySQL的配置腳本。
| # https://github.com/SonarSource/sonar-examples/tree/master/scripts/database/mysql
|
2.4. 下載并配置sonar
本文下載的是SonarQube 3.7.4 LTS。不須要下載其它工具。
改動sonar-3.7.4/conf/sonar.properties文件里的sonar.jdbc.url、sonar.jdbc.username和sonar.jdbc.password屬性,詳細要參照前面mysqlserver的配置。
本文中設置的值是:
sonar.jdbc.username:?????????????????????? sonar
sonar.jdbc.password:?????????????????????? sonar
sonar.jdbc.url: ? jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8
sonar.properties配置文件還能夠設置其它項。比方HTTP監聽port,臨時保持默認。
2.5. 啟動sonarserver
運行sonar-3.7.4/bin/文件夾下指定操作系統的腳本。啟動sonar。
Sonar啟動后:
(1)會連接mysqlserver,并在sonar數據庫中建立相關的表格。
(2)啟動一個httpserver,監聽port為9000,當然這個port號是能夠配置的。
當然,Sonar也能夠作為服務安裝到操作系統中,本文不再描寫敘述。
2.6. 登錄server
通過瀏覽器登錄sonarserver,能夠對sonar進行配置、安裝插件等。
URL地址默認是http://{sonar_server_ip}:9000。
默認的username和password是admin/admin。
本文保持sonar的默認配置。
3.??利用maven向sonarserver提交分析任務
能夠有多種方法向sonar提交分析任務,本文利用maven。注意sonar 3.7.4僅僅支持maven3.1版本號。
3.1. 改動maven的settings.xml文件。
參考文檔:http://docs.codehaus.org/display/SONAR/Installing+and+Configuring+Maven
| <profile> ????? <properties> ??????? <sonar.jdbc.url>jdbc:mysql://192.168.150.11:3306/sonar? useUnicode=true&characterEncoding=utf8</sonar.jdbc.url> ??????? <sonar.jdbc.username>sonar</sonar.jdbc.username> ??????? <sonar.jdbc.password>sonar</sonar.jdbc.password> ??????? <sonar.host.url>http://192.168.150.11:9000</sonar.host.url> ????? </properties> ??? </profile> ? </profiles> |
3.2. 改動pom.xml文件,以添加mysql驅動
| <build> ??? <extensions> ??????????? <extension> ??????????????????? <groupId>mysql</groupId> ??????????????????? <artifactId>mysql-connector-java</artifactId> ??????????????????? <version>5.1.24</version> ??????????? </extension> ??????? </extensions> ??? </build> |
3.3. 提交分析任務
參考文檔:http://docs.codehaus.org/display/SONAR/Analyzing+with+Maven
運行下面maven命令:
| mvn clean install mvn sonar:sonar |
注意sonar:sonar必須單獨運行。
假設把sonar:sonar和其它target混在一起,比方mvn clean install sonar:sonar,可能導致不可預期的問題。
3.4. 查看分析結果
通過瀏覽器登錄sonarserver,查看分析結果。
總結
以上是生活随笔為你收集整理的Java代码质量监控工具Sonar安装的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php验证码--图片
- 下一篇: SpringMVC中 -- @Reque