博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java代码质量监控工具Sonar安装
阅读量:6438 次
发布时间:2019-06-23

本文共 2472 字,大约阅读时间需要 8 分钟。

1.  代码质量七宗罪

Sonar是一个代码质量管理系统。它的帮助文档开篇明义,提出了代码质量的七宗罪。总结的比較到位。最好还是一看:

1.        Bug和隐藏Bug()

2.        违反编码规范()

3.        复制粘贴()

4.        缺乏单元測试()

5.        恶劣的复杂度分布()

6.        意大利面式设计()

7.        凝视不足或过多()

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的配置脚本。

#

#Create SonarQubedatabase and user.

#

# Command: mysql-u root-p < create_database.sql

#

CREATE DATABASE sonarCHARACTER SET utf8COLLATE utf8_general_ci;

CREATE USER'sonar' IDENTIFIED BY'sonar';

GRANT ALL ON sonar.* TO'sonar'@'%' IDENTIFIED BY'sonar';

GRANT ALL ON sonar.* TO'sonar'@'localhost' IDENTIFIED BY'sonar';

FLUSH PRIVILEGES;

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&amp;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&amp;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,查看分析结果。

转载地址:http://jmzwo.baihongyu.com/

你可能感兴趣的文章
SpringMVC的Controller
查看>>
SQL优化案例
查看>>
9.10模拟赛
查看>>
五、单件模式
查看>>
深入解析Java字节码和字节码操作类库ASM源码解析
查看>>
数据库索引
查看>>
用python写网络爬虫 -从零开始 3 编写ID遍历爬虫
查看>>
[cpyhon源代码]dict对象原理学习
查看>>
Testlink使用介绍
查看>>
Robotframework集成jenkins执行用例
查看>>
【SAP BI】BW如何连接SQLSERVER数据库
查看>>
$().each()和$.each()
查看>>
linux下root密码修改方法
查看>>
添加操作。。。
查看>>
Bootstrap框架
查看>>
MSHTML
查看>>
Android学习记录:SQLite数据库、res中raw的文件调用
查看>>
The 'microsoft.jet.oledb.4.0' provider is not registered on the local machin
查看>>
验证视图状态MAC失败的解决办法
查看>>
拦截器,过滤器,监听器原理
查看>>