再好的程序员也会出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 代码检查的更多相关文章

  1. Android 代码检查工具SonarQube

    http://blog.csdn.net/rain_butterfly/article/details/42170601 代码检查工具能帮我们检查一些隐藏的bug,代码检查工具中sonar是比较好的一 ...

  2. 代码检查工具sonarqube介绍及使用

    亲测有效 环境:springboot+gradle+jdk1.8+sonarqube7.4 一.说明: SonarQube为静态代码检查工具,采用B/S架构,帮助检查代码缺陷,改善代码质量,提高开发速 ...

  3. Jenkins+SonarQube代码质量检查自动化

    基础概念百度百科:Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:1.持续的软件版本发布/测试项目.2.监控外部调用执行的工作.前面[Sonarqube 代码质量 ...

  4. 在Jenkins中使用sonar进行静态代码检查

    要解决的问题 jenkins自动构建完成后,希望能通过sonar静态代码检查生成一份报告,给与开发人员对当前代码的做一个质量评估和修改意见 1.安装并配置sonar服务器 懒得说,跟着官方文档走就行, ...

  5. SonarQube4.4+Jenkins进行代码检查实例之三-单元測试分析

    作者:张克强    作者微博:张克强-敏捷307 在 <SonarQube4.4+Jenkins进行代码检查实例之中的一个> 中介绍了不编译仅仅检查的方式. 在<SonarQube4 ...

  6. Jenkins之Sonar 代码检查

    一.简介 SonarQube 是一个用于代码质量管理的开放平台.通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具.与持续集成工具(例如 Hudson/Jenkins 等 ...

  7. 十分钟搭建和使用sonarqube代码质量管理平台

    前言 Sonarqube为静态代码检查工具,采用B/S架构,帮助检查代码缺陷,改善代码质量,提高开发速度,通过插件形式,可以支持Java.C.C++.JavaScripe等等二十几种编程语言的代码质量 ...

  8. DevOps之持续集成SonarQube代码质量扫描

    一.SonarQube介绍       SonarQube是一个用于代码质量检测管理的开放平台,可以集成不同的检测工具,代码分析工具,以及持续集成工具.SonarQube 并不是简单地把不同的代码检查 ...

  9. 代码检查工具 Sonar 安装&使用

    本文主要说明Sonar的安装方式并附上依赖安装包,本文目标只实现本地搭建测试的Sonar环境,以及本地的测试项目的非定制化扫描 本机测试环境:Win10-X64,.vs2017      依赖包: 1 ...

随机推荐

  1. 使用Docfx生成项目文档

    使用docfx.console生成本项目的文档 使用docfx.console生成其他项目的文档 直接使用docfx.exe生成项目文档 指定配置文档模板   文档地址:http://gitlab.l ...

  2. Qt5.2+opencv2.4.9配置安装过程

    Qt5.2+Opencv2.4.9的安装与配置 安装环境 Win10系统 Qt5.2.0 Opencv2.4.9 1. 安装Qt5.2.0 安装在D:\Qt\5.2.0文件夹(记为A文件夹) Qt下载 ...

  3. 下列java代码中的变量a、b、c分别在内存的______存储区存放。

    class A{ private String a = "aa"; public boolean methodB(){ String b = "sb"; fin ...

  4. EasyUI ---- draggable可拖动的用法

    <link href="~/Scripts/easyui1.5/themes/default/easyui.css" rel="stylesheet" / ...

  5. ros 查找包路径

    rospack find 包名

  6. phpmyadmin 定位表

    一个数据库,里面有几百个表.如何快速定位需要的表呢? 关键字查询,就好了! 很方便,很实用. 建表的时候,相关性比较强的,就用同一个前缀.

  7. 统计字符串中每个字符出现的次数(Python)

    #统计字符串中每个字符出现的次数 以The quick brown fox jumps over the lazy dog为例 message='The quick brown fox jumps o ...

  8. Codeforces 285C - Building Permutation

    285C - Building Permutation 思路:贪心.因为每个数都不同且不超过n,而且长度也为n,所有排列只能为1 2 3 ......n.所以排好序后与对应元素的差值的绝对值加起来就是 ...

  9. indexedDB入门

    localforage localStorage局限性:存储容量限制,仅支持字符串,如果是存对象还需要将使用JSON.stringify和JSON.parse方法互相转换:读取都是同步的.大多数情况o ...

  10. [.NET开发] C#面向服务WebService从入门到精通

    C#面向服务WebService从入门到精通>包含以下两个部分: 一.<C#远程调用技术WebService修炼手册[基础篇]> 本次分享课您将学习到以下干货知识点: 1).WebS ...