sonarqube 代码检查
再好的程序员也会出bug,所以代码检查很有必要。今天就出一个简单的检查工具代替人工检查。
参考:
http://www.cnblogs.com/qiaoyeye/p/5249786.html
环境及版本
jdk: 1.7
sonarqube:http://www.sonarqube.org/downloads/ 我这里使用 sonarqube-5.3.zip
SonarQube+Scanner:https://sonarsource.bintray.com/Distribution/sonar-scanner-cli/sonar-scanner-2.5.zip
mysql
百度云:
http://pan.baidu.com/s/1gfCAvAz
1.解压sonarqube-5.3.zip之后打开
E:\installFile\qube\newQube\sonarqube-5.3\bin\windows-x86-64\StartSonar.bat
2.启动浏览器,访问http://localhost:9000,如出现下图则表示安装成功。

3.配置 sonarqube 数据库
E:\installFile\qube\newQube\sonarqube-5.3\conf\sonar.properties
sonar.jdbc.url=jdbc:mysql://localhost:3306/world?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar.jdbc.username=root
sonar.jdbc.password=centos
sonar.sorceEncoding=UTF-8
sonar.login=admin
sonar.password=admin
4.重启sonarqube服务,再次访问http://localhost:9000,会稍微有点慢,因为要初始化数据库信息
5.数据库初始化成功后,登录
6.解压 sonar-scanner-2.5.zip
E:\installFile\qube\newQube\sonar-scanner-2.5.1
7.配置数据库信息
E:\installFile\qube\newQube\sonar-scanner-2.5.1\conf\sonar-runner.properties
sonar.jdbc.url=jdbc:mysql://localhost:3306/world?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar.jdbc.username=root
sonar.jdbc.password=centos
注意:如果测试项目与服务器不在同一台机子,则需要添加服务器的IP:
#----- Default SonarQube server
sonar.host.url=http://XXX.XXX.XXX.XXX:9000
8.配置环境变量
a.新建变量,name=SONAR_RUNNER_HOME。value=E:\installFile\qube\newQube\sonar-scanner-2.5.1
b.打开path,输入%SONAR_RUNNER_HOME%\bin;
c.sonar-runner -v,出现以下信息,则表示环境变量设置成功

9.打开要进行代码分析的项目根目录,新建sonar-project.properties文件
10.输入以下信息 注意以记事本打开,unicode编码编辑。
# Root project information
sonar.projectKey=efc.eac
sonar.projectName=efc.eac
sonar.projectVersion=1.0 # Some properties that will be inherited by the modules
sonar.sources=src # List of the module identifiers
sonar.modules=efc.eac.api.dao,efc.eac.api.impl,efc.eac.api.service,efc.eac.commons,efc.eac.core.dao,efc.eac.core.impl,efc.eac.core.service,efc.eac.core.web,efc.eac.dict.dao,efc.eac.dict.impl,efc.eac.dict.service,efc.eac.dict.web,efc.eac.gerp.dao,efc.eac.gerp.impl,efc.eac.gerp.service,efc.eac.gerp.web,efc.eac.log.dao,efc.eac.log.impl,efc.eac.log.service,efc.eac.log.web,efc.eac.war # Properties can obviously be overriden for
# each module - just prefix them with the module ID
efc.eac.api.dao.sonar.projectName=efc.eac.api.dao
efc.eac.api.impl.sonar.projectName=efc.eac.api.impl
efc.eac.api.service.sonar.projectName=efc.eac.api.service
efc.eac.commons.sonar.projectName=efc.eac.commons
efc.eac.core.dao.sonar.projectName=efc.eac.core.dao
efc.eac.core.impl.sonar.projectName=efc.eac.core.impl
efc.eac.core.service.sonar.projectName=efc.eac.core.service
efc.eac.core.web.sonar.projectName=efc.eac.core.web
efc.eac.dict.dao.sonar.projectName=efc.eac.dict.dao
efc.eac.dict.impl.sonar.projectName=efc.eac.dict.impl
efc.eac.dict.service.sonar.projectName=efc.eac.dict.service
efc.eac.dict.web.sonar.projectName=efc.eac.dict.web
efc.eac.gerp.dao.sonar.projectName=efc.eac.gerp.dao
efc.eac.gerp.impl.sonar.projectName=efc.eac.gerp.impl
efc.eac.gerp.service.sonar.projectName=efc.eac.gerp.service
efc.eac.gerp.web.sonar.projectName=efc.eac.gerp.web
efc.eac.log.dao.sonar.projectName=efc.eac.log.dao
efc.eac.log.impl.sonar.projectName=efc.eac.log.impl
efc.eac.log.service.sonar.projectName=efc.eac.log.service
efc.eac.log.web.sonar.projectName=efc.eac.log.web
efc.eac.war.sonar.projectName=efc.eac.war
其中:projectName是项目名字,sources是源文件所在的目录
11.在cmd进入项目所在的根目录,输入命令:sonar-runner,分析成功后打开http://localhost:9000/,我们会看到主页出现了分析项目的概要图

12.点击相应的项目进入

13.查看问题

14.查看bug

15.进入bug详情查看具体信息

16.随便看一个,打印日志的建议。

sonarqube 代码检查的更多相关文章
- Android 代码检查工具SonarQube
http://blog.csdn.net/rain_butterfly/article/details/42170601 代码检查工具能帮我们检查一些隐藏的bug,代码检查工具中sonar是比较好的一 ...
- 代码检查工具sonarqube介绍及使用
亲测有效 环境:springboot+gradle+jdk1.8+sonarqube7.4 一.说明: SonarQube为静态代码检查工具,采用B/S架构,帮助检查代码缺陷,改善代码质量,提高开发速 ...
- Jenkins+SonarQube代码质量检查自动化
基础概念百度百科:Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:1.持续的软件版本发布/测试项目.2.监控外部调用执行的工作.前面[Sonarqube 代码质量 ...
- 在Jenkins中使用sonar进行静态代码检查
要解决的问题 jenkins自动构建完成后,希望能通过sonar静态代码检查生成一份报告,给与开发人员对当前代码的做一个质量评估和修改意见 1.安装并配置sonar服务器 懒得说,跟着官方文档走就行, ...
- SonarQube4.4+Jenkins进行代码检查实例之三-单元測试分析
作者:张克强 作者微博:张克强-敏捷307 在 <SonarQube4.4+Jenkins进行代码检查实例之中的一个> 中介绍了不编译仅仅检查的方式. 在<SonarQube4 ...
- Jenkins之Sonar 代码检查
一.简介 SonarQube 是一个用于代码质量管理的开放平台.通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具.与持续集成工具(例如 Hudson/Jenkins 等 ...
- 十分钟搭建和使用sonarqube代码质量管理平台
前言 Sonarqube为静态代码检查工具,采用B/S架构,帮助检查代码缺陷,改善代码质量,提高开发速度,通过插件形式,可以支持Java.C.C++.JavaScripe等等二十几种编程语言的代码质量 ...
- DevOps之持续集成SonarQube代码质量扫描
一.SonarQube介绍 SonarQube是一个用于代码质量检测管理的开放平台,可以集成不同的检测工具,代码分析工具,以及持续集成工具.SonarQube 并不是简单地把不同的代码检查 ...
- 代码检查工具 Sonar 安装&使用
本文主要说明Sonar的安装方式并附上依赖安装包,本文目标只实现本地搭建测试的Sonar环境,以及本地的测试项目的非定制化扫描 本机测试环境:Win10-X64,.vs2017 依赖包: 1 ...
随机推荐
- 51nod 1051 最大子矩阵和
没想到居然可以O(n3)暴力过 就是大概之前的 最大连续子序列和 加成2维度了 枚举起始列 和 终止列 然后计算从1到n行最大的子矩阵的和 注意n 和 m 的输入顺序!! #include< ...
- mybatis的注解开发之三种动态sql
脚本sql XML配置方式的动态SQL我就不讲了,有兴趣可以自己了解,下面是用<script>的方式把它照搬过来,用注解来实现.适用于xml配置转换到注解配置 @Select(" ...
- Ubuntu 14.04 禁用ipv6
参考: 关闭IPV6,ubuntu 14.04 Ubuntu 14.04 禁用ipv6 1.检查ipv6是否开启: cat /proc/sys/net/ipv6/conf/all/disable_ip ...
- UVa 1411 Ants(分治)
https://vjudge.net/problem/UVA-1411 题意:n只蚂蚁和n颗苹果树,一一配对并且不能交叉. 思路:这就是巨人与鬼的问题.用分治法就行了. #include<ios ...
- codeforces804D Expected diameter of a tree
本文版权归ljh2000和博客园共有,欢迎转载,但须保留此声明,并给出原文链接,谢谢合作. 本文作者:ljh2000 作者博客:http://www.cnblogs.com/ljh2000-jump/ ...
- Java中的正则表达式Pattern与Matcher
一般来说比起功能有限的String类,我们更愿意构造功能强大的正则表达式.我们可以通过Pattern 与 Matcher 来构建功能强大的正则表达式 import java.io.File; impo ...
- MongoDB(课时27 消除重复数据)
3.7.2 消除重复数据 在SQL中对于重复的数据可以使用"DISTINCT"消除,在MongoDB中依然支持.(distinct不同的) 范例:查询所有name的信息 本次的操作 ...
- BeautifulSoup中的select方法
在写css时,标签名不加任何修饰,类名前加点,id名前加 #,我们可以用类似的方法来筛选元素,用到的方法是soup.select(),返回类型是list. (1).通过标签名查找 print(soup ...
- [原][osg][osgEarth][粒子特效]关于粒子特效库在osgEarth中,位置摆放问题,跟踪节点移动问题
首先粒子在地球上位置摆放很简单: //传入的经纬度坐标 osg::Vec3d geoPoint; const SpatialReference* latLong = SpatialReference: ...
- 精伦盒子H1,插上USB,找不到对应的文件路径
看USB的灯闪的挺正常的, 但就是不知道,该怎么mount 上去. 查了UDEV的资料, 发觉这个盒子虽然没有 udevmonitor命令, 却可以用 udevadm monitor 来监视udev ...