说明:sonar依赖数据库.

mysql优化

1、笔者使用的是mysql数据库.首先对mysql做简单的优化配置.

[root@localhost bin]# cat /etc/my.cnf
[mysqld]
max_allowed_packet=10M
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=
# 修改默认的编码为utf8
default-character-set=utf8
# 修改默认的存储引擎为InnoDB
default-storage-engine=InnoDB
# 这个参数主要作用是缓存innodb表的索引,数据,插入数据时的缓冲
innodb_buffer_pool_size = 256M
# 配置查询缓存的大小
query_cache_size=128M
# 启动mysql高速缓存
query_cache_type= [mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
2、重启mysql服务
[root@localhost bin]# service mysqld restart
Stopping mysqld: [ OK ]
Starting mysqld: [ OK ]

sonar安装和部署

1、sonar部署

[root@localhost local]# pwd
/usr/local
[root@localhost local]# unzip sonarqube-4.5..zip
修改sonar配置文件
[root@localhost conf]# pwd
/usr/local/sonarqube-4.5./conf
[root@localhost conf]# vim sonar.properties
sonar.jdbc.username=root
sonar.jdbc.password=
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar.web.javaOpts=-Xmx768m -XX:MaxPermSize=160m -XX:+HeapDumpOnOutOfMemoryError
sonar.web.host=0.0.0.0
sonar.web.port=

创建sonar数据库依赖

create database sonar default character set utf8;

2、利用nginx反响代理

upstream配置

upstream tomcat_tools.sonar.local {
server 127.0.0.1: weight= max_fails= fail_timeout=300s;
}
server {
listen ;
server_name tools.sonar.local.com;
root /usr/local/sonarqube-4.5./web/;
access_log /usr/local/sonarqube-4.5./logs/tools.sonar.local.com_access.log main;
error_log /usr/local/sonarqube-4.5./logs/tools.sonar.local.com_error.log warn;
error_page /40x.html; location / {
index index.html index.htm;
proxy_next_upstream http_500 http_502 http_503 http_504 error timeout invalid_header;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://tomcat_tools.sonar.local;
expires 0d;
}
}
增减配置完成后,重启nginx
[root@localhost domains]# service nginx restart

3、修改防火墙开放9000端口

-A INPUT -m state --state NEW -m tcp -p tcp --dport  -j ACCEPT

4、启动sonar

[root@localhost linux-x86-]# pwd
/usr/local/sonarqube-4.5./bin/linux-x86-
[root@localhost linux-x86-]# ls
lib sonar.sh wrapper
[root@localhost linux-x86-]# ./sonar.sh start
Starting SonarQube...
Started SonarQube.

5、访问tools.sonar.local.com

6、登录sonar[默认账号admin/admin]安装汉化包

Settings/SYSTEM/Update Center/Available Plugins

选择汉化包,汉化完成之后需要重新启动.

项目代码提交sonar检测代码质量

1、在maven本地仓库的settings.xml中 <profiles>节点之间增加如下内容

<profiles>
<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<sonar.jdbc.url>
jdbc:mysql://192.168.147.129:3306/sonar?useUnicode=true&amp;characterEncoding=utf8
</sonar.jdbc.url>
<sonar.jdbc.driver>com.mysql.jdbc.Driver</sonar.jdbc.driver>
<sonar.jdbc.username>root</sonar.jdbc.username>
<sonar.jdbc.password></sonar.jdbc.password>
<sonar.host.url>http://tools.sonar.local.com</sonar.host.url>
</properties>
</profile>
</profiles>

或者直接在应用项目的总pom中增加如上内容.区别是前者为所有项目增加,后者只是针对单个项目配置.

2、创建mvn命令
3、执行命令,查看sonar控制面板的项目

如图,为刚才的项目接入到sonar检测上的情况.点击查看该代码的质量情况. 转载请注明出处:[http://www.cnblogs.com/dennisit/p/4546245.html]

sonar的安装与代码质量检测实例的更多相关文章

  1. 代码质量检测-Sonar

    一. Sonar简介 sonarqube系统是一个代码质量检测工具 由以下四个组件组成(https://docs.sonarqube.org/display/SONAR/Architecture+an ...

  2. 代码质量检测(SonarQube)整合中文版+阿里P3C

    代码质量检测(SonarQube)整合中文版+阿里P3C 简介 SonarQube是一种自动代码审查工具,用于检测代码中的错误,漏洞和代码异味.它可以与您现有的工作流程集成,以便在项目分支和拉取请求之 ...

  3. Docker 搭建代码质量检测平台 SonarQube

    开始搭建 1.获取 postgresql 的镜像 $ docker pull postgres 2.启动 postgresql $ docker run --name db -e POSTGRES_U ...

  4. 【转】使用sonar为你的代码质量保驾护航

    一. 简介Sonar是一个用于代码质量管理的开放平台,相信大家都不会陌生.Sonar可以集成不同的测试工具,代码分析工具,以及持续集成工具.官方网站https://www.sonarqube.org ...

  5. PHP 代码质量检测工具的安装与使用

    代码统计工具 PHPLOC安装:wget https://phar.phpunit.de/phploc.phar chmod +x phploc.phar sudo mv phploc.phar /u ...

  6. 基于docker-compose搭建sonarqube代码质量检测平台

    一.需求 在我们开发的过程中,难免有时候代码写的不规范,或存在一些静态的bug问题,这个时候一个良好的代码检查工具就很有必要,而sonarqube正好可以满足整个要求. 二. docker-compo ...

  7. 推荐个Java代码质量检测的利器 —— FindBugs

    一.下载 插件的下载地址(sourceforge):FindBugs-Eclipse插件 二.安装 Eclipse插件的安装,就不多说了. 三.使用 1.找一个Project,选中它(也可以针对某个P ...

  8. jenkins+sonarqube进行代码质量检测

    JavaNeverGiveUp教程篇 用jenkins+sonarqube去检查代码是非常方便的,它能检查出代码中可能存在的一些问题,比如io流未关闭.空指针异常.死循环.代码不规范等问题. 1. 搭 ...

  9. 从0到1一步步搭建代码质量检测系统~iOS

    演示环境:Mac OSX10.12.2 Xcode8 先瞄一眼最终成果- 1.JDK,DBMS(演示环境使用Mysql) 2.创建sonar数据库和用户 mysql -u root -pCREATE ...

随机推荐

  1. hdoj 2680 choose the best route

    Problem Description One day , Kiki wants to visit one of her friends. As she is liable to carsicknes ...

  2. asp.net正则表达式学习例子

    asp.net 获取网页Document时常会用到 edited by:曹永思-博客园 1.获取某个class的div内的标签 获取<div class="imgList2" ...

  3. Android 网络开发免费API接口

    http://www.juhe.cn/                              聚合数据              目前很多接口都收费 https://www.showapi.com ...

  4. [Leetcode][JAVA] Triangled

    Triangle Given a triangle, find the minimum path sum from top to bottom. Each step you may move to a ...

  5. 响应式Web设计(Responsive Web design)的理念

    页面的设计与开发应当根据用户行为以及设备环境(系统平台.屏幕尺寸.屏幕定向等)进行相应的响应和调整.具体的实践方式由多方面组成,包括弹性网格和布局.图片.CSS media query的使用等.无论用 ...

  6. MySQL中distinct和group by性能比较[转]

    MySQL中distinct和group by性能比较[转] 之前看了网上的一些测试,感觉不是很准确,今天亲自测试了一番.得出了结论(仅在个人计算机上测试,可能不全面,仅供参考) 测试过程: 准备一张 ...

  7. poj 1556 The Doors

    The Doors Time Limit: 1000 MS Memory Limit: 10000 KB 64-bit integer IO format: %I64d , %I64u   Java ...

  8. 《Linux内核设计与实现》读书笔记(二十)- 补丁, 开发和社区

    linux最吸引我的地方之一就是它拥有一个高手云集的社区, 还有就是如果能=为linux内核中贡献代码, 一定是一件令人自豪的事情. 下面主要总结一些和贡献代码相关的主要内容. 加入社区 编码风格 提 ...

  9. 【Windows 10 IoT - 2】LED闪烁及动画绘制(树莓派 Pi2)

    在上一篇博文<Windows 10 IoT系统安装>中,我们实现了在树莓派2平台上运行Window 10 IoT,本篇文章将介绍在该平台上的程序开发. 在最初获得的资讯中,以为Window ...

  10. 冲刺阶段 day 4

    day4 项目进展 今天上完软件工程后我们便聚在宿舍,总结了一下昨天的工作,讨论完成了昨天未完成的 注册功能,然后趁热打铁,构建了学生管理这部分的窗体搭建及部分代码的编写. 存在的问题 代码记不得.在 ...