配置成功后的代码分析页面:

可以看到对复杂度、语法使用、重复度等等都做了分析,具体到了每一个方法和每一句代码。

四种使用方式:

sonarqube + sonar-runner
sonarqube + maven
sonarqube + eclipse
sonarqube + IDE IntelliJ
 

使用方式1 :sonarqube + sonar-runner

1.环境

jdk 1.7

sonarqube 4.5.7 (最新的sonarqube都要求jdk1.8,找了一个匹配1.7的较新版本)

postgresql 9.6.1 (soonarqube4.5.7要求postgresql为8.x 或9.x)

sonar-runner:2.4 (sonarqube4.4+,至少要sonar-runner2.4。sonar-runner在2.4版本之后改名为sonar-scanner)

 
2.创建数据库

在本地创建数据库sonar。

账号:postgres

密码:liyuhui20093357

3.安装、配置并运行sonarqube

(1)安装

下载后,解压,即安装成功。

(2)配置

修改conf目录下的sonar.properties文件。

 数据库相关
访问路径和端口相关

(3)环境变量

SONAR_HOME    E:\lyh\software\sonarqube-4.5.7

Path   ;%SONAR_HOME%\bin;

 (4)运行

选择与电脑匹配的文件夹,运行startSonar.bat。

启动成功命令框会出现如下提示:
 

(5)访问主页

运行成功后,可以访问sonar的主页,并且数据库sonar也出现了众多表。

主页:http://localhost:9000/sonar (与配置文件对应)

出来的表:

 

(6)安装中文插件包

主页中虽然有chinese pack,但是没有install按钮。只好去其他地方自己下了一个插件包。

安装好插件后,重启sonarqube,再访问主页,就变成中文的页面了。

4.安装、配置并运行sonar-runner

(1)安装

下载后,解压,即安装成功。

(2)配置

修改conf目录下的sonar-runner.properties文件。

 数据库相关
sonarqube相关

(3)环境变量

SONAR_RUNNER_HOME    E:\lyh\software\sonar-runner-2.4

Path   ;%SONAR_RUNNER_HOME%\bin;

(4)项目分析的配置文件

进入项目主目录,新建文件sonar-project.properties。

配置如下:

注意这里的language,sonar-runner有详细的格式规定,且大小写敏感,所以写作Java会报错。

 (5)运行

进入项目的主目录,运行命令:sonar-runner

分析项目成功:

5.查看分析结果

访问路径:http://localhost:9000/sonar (与配置文件匹配)

选择主页中的项目,选择项目中的aas,然后就可以查看每一个分析结果。

 
 

2017.4.18 静态代码分析工具sonarqube+sonar-runner的安装配置及使用的更多相关文章

  1. 静态代码分析工具sonarqube+sonar-runner的安装配置及使用

    配置成功后的代码分析页面: 可以看到对复杂度.语法使用.重复度等等都做了分析,具体到了每一个方法和每一句代码. 四种使用方式: sonarqube + sonar-runner sonarqube + ...

  2. 常用 Java 静态代码分析工具的分析与比较

    常用 Java 静态代码分析工具的分析与比较 简介: 本文首先介绍了静态代码分析的基 本概念及主要技术,随后分别介绍了现有 4 种主流 Java 静态代码分析工具 (Checkstyle,FindBu ...

  3. [转载] 常用 Java 静态代码分析工具的分析与比较

    转载自http://www.oschina.net/question/129540_23043 简介: 本文首先介绍了静态代码分析的基本概念及主要技术,随后分别介绍了现有 4 种主流 Java 静态代 ...

  4. C++静态代码分析工具推荐——PVS-Studio

    长假归来,最近一直没更新,节前本来就想写这篇了,一直到今天才有时间. 关于静态代码分析在维基百科上可以查到很详细的介绍:https://en.wikipedia.org/wiki/List_of_to ...

  5. 来试试这个来自静态代码分析工具PVS Studio提供C++的小测验吧

    博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:来试试这个来自静态代码分析工具PVS Studio提供C++的小测验吧.

  6. 【转载】常用 Java 静态代码分析工具的分析与比较

    摘自:http://www.oschina.net/question/129540_23043常用 Java 静态代码分析工具的分析与比较 简介: 本文首先介绍了静态代码分析的基本概念及主要技术,随后 ...

  7. java静态代码分析工具infer

    infer是一个静态代码分析工具,探测bugs. 主要支持Java.C/C++ 安装:brew install infer 在线展示:https://codeboard.io/projects/115 ...

  8. Https与Http,SSL,DevOps, 静态代码分析工具,RFID, SSH, 非对称加密算法(使用最广泛的一种是RSA), 数字签名, 数字证书

    在URL前加https://前缀表明是用SSL加密的. 你的电脑与服务器之间收发的信息传输将更加安全. Web服务器启用SSL需要获得一个服务器证书并将该证书与要使用SSL的服务器绑定. http和h ...

  9. Eclipse插件(导出UML图,打开文件资源管理器插件,静态代码分析工具PMD,在eclipse上安装插件)

    目录 能够导出UML图的Eclipse插件 打开文件资源管理器插件 Java静态代码分析工具PMD 如何在eclipse上安装插件 JProfiler性能分析工具 从更新站点安装EclEmma 能够导 ...

随机推荐

  1. ACdream 1025 bfs

    Transform Time Limit: 4000/2000MS (Java/Others) Memory Limit: 128000/64000KB (Java/Others) Submit St ...

  2. git的回退和撤销操作

    回退是git的使用中很常用的一个操作,如果清楚各个回退命令的作用,不仅大大加快代码回退的效率,还能避免代码回退造成的事故 1.git reset --hard [commit] 清空暂存和未暂存的更改 ...

  3. webpack最佳入门实践系列(4)

    7.使用字体 7.1.安装字体库-font-awesome 我们通过npm来安装字体 npm install font-awesome --save 这个时候,我们的package.json配置文件变 ...

  4. mysql如何更改character-set-server默认为latin1

    运行环境:win10 mysql版本:MYSQL5.7免安装版(或解压版) 今天在学习mysql字符集有关乱码的知识 然后发现了latin1的字符集编码格式,虽然命令行窗口改变很容易,只需两行命令 s ...

  5. 单位转换类UnitUtil2

    package com.jlb.scan.util; import java.math.BigDecimal; import java.text.DecimalFormat; import com.j ...

  6. 《Linux命令行与shell脚本编程大全 第3版》高级Shell脚本编程---47

    以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:

  7. 流畅的python第九章笔记 python风格的python

    9.1对象表示形式 __repr__和__str__这两个方法都是用于显示的,__str__是面向用户的,而__repr__面向程序员. 我们打印下面的A是默认输出这个对象的类型,我们对B进行了修改_ ...

  8. Windows录音API学习笔记--转

    Windows录音API学习笔记 结构体和函数信息  结构体 WAVEINCAPS 该结构描述了一个波形音频输入设备的能力. typedef struct { WORD      wMid; 用于波形 ...

  9. Python 如何调用 Java

    引用了这个文章,请打开链接  http://www.cnblogs.com/junrong624/p/5278457.html 日后待补写 ...

  10. MFC学习之EDIT控件初始化

    //四种方法为EDIT控件初始化     //调用系统API     HWND hEidt = ::GetDlgItem(m_hWnd,IDC_EDIT1);     ::SetWindowText( ...