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

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

四种使用方式:

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文件。

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

(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文件。

1 数据库相关
2 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,然后就可以查看每一个分析结果。

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

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

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

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

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

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

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

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

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

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

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

  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. Linux-(vmstat,iostat,netstat)

    vmstat命令 vmstat是Virtual Meomory Statistics(虚拟内存统计)的缩写,可对操作系统的虚拟内存.进程.CPU活动进行监控.他是对系统的整体情况进行统计,不足之处是无 ...

  2. Nodejs学习笔记(四)—与MySQL交互(felixge/node-mysql)

    简介和安装 Node.js与MySQL交互操作有很多库,具体可以在 https://www.npmjs.org/search?q=mysql  查看. 我选择了felixge/node-mysql,用 ...

  3. vue2.0读书笔记3 - router、vuex

    1.vue的应用场景.优势.劣势 优势 通常情况下,运行时效率更高:一个事件循环仅一次视图更新,无频繁的DOM操作: 数据与视图分离,通过管理数据流,控制页面的展现,便于维护.且高效: 数据双向绑定, ...

  4. javaScript 简单的时间格式转换【转】

    转自:http://blog.csdn.net/lxl_family/article/details/38693903.根据时间戳,转成相对的字符串形式 function timeStamp2Stri ...

  5. 南阳nyoj 56 阶乘因式分解(一)

    阶乘因式分解(一) 时间限制:3000 ms  |  内存限制:65535 KB 难度:2   描述 给定两个数m,n,其中m是一个素数. 将n(0<=n<=10000)的阶乘分解质因数, ...

  6. Mac Supervisor 管理进程

    无论是在日常工作中还是平时玩代码中,我总是离不开 Supervisor,其实很久之前我就写过一篇文章:supervisord 部署 Flask,在里面,我仔细讲解了如何在 Linux 环境下安装并且配 ...

  7. Python爬虫初识

    本文章是对网易云课堂中的Python网络爬虫实战课程进行总结.感兴趣的朋友可以观看视频课程.课程地址 爬虫简介 一段自动抓取互联网信息的程序 非结构化数据 没有固定的数据格式,如网页资料. 必须通过E ...

  8. [合集]解决Python报错:local variable 'xxx' referenced before assignment

    a = 1 def use(): print(a) #输出1 引用不会报错 a = 1 def use(): a = 3 print(a) #输出 3 重新赋值也不会报错. 局部变量会优先在函数内部去 ...

  9. Yii 之components

    当我们创建一个module的时候,对应的path alias就已经创建.比如我们定义了一个module: www 1 2 3 4 5 'modules'=>array(     'www'=&g ...

  10. 神奇的Flex 布局

    layout是css中的一个重点.传统的页面布局是盒子模型,依赖 display属性 ,position属性 , float属性.它对于那些特殊布局非常不方便,而且定位用多了会出现挺多的bug. 所以 ...