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

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

四种使用方式:

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. java的日期格式化

    原博客地址: http://blog.csdn.net/yangbobo1992/article/details/9965105 日期格式: 时间日期标识符: yyyy:年 MM:月 dd:日 hh: ...

  2. ASP.NET Core 中的 ORM 之 Entity Framework

    目录 EF Core 简介 使用 EF Core(Code First) EF Core 中的一些常用知识点 实体建模 实体关系 种子数据 并发管理 执行 SQL 语句和存储过程 延迟加载和预先加载 ...

  3. Go RabbitMQ (一)

    RabbitMQ 简介 RabbitMQ是一个消息代理,用来负责接收和转发消息. 术语 生产者:生产者是负责发送消息的 队列:队列是RabbitMQ用来存储消息的,受主机内存和磁盘大小的限制,本质上是 ...

  4. 【LeetCode题解】237_删除链表中的节点

    目录 237_删除链表中的节点 描述 解法 思路 Java 实现 Python 实现 237_删除链表中的节点 描述 请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除 ...

  5. 前端JS校验银行卡卡号和身份证号码(附ES6版方法)

    1.银行卡卡号校验方法. function luhnCheck(bankno) { var lastNum = bankno.substr(bankno.length - 1, 1); //取出最后一 ...

  6. Linux下svn服务器搭建

    初次在linux上搭建svn服务器,本来以为很繁琐,其实很简单,主要分为以下几个步骤: 1.  首先安装subversion,命令:yum install subversion 2.  创建svn仓库 ...

  7. [九省联考 2018]秘密袭击coat

    Description 题库链接 给出一棵 \(n\) 个点的树,每个点有点权.求所有联通块的权值 \(k\) 大和,对 \(64123\) 取模. \(1\leq n,k\leq 1666\) So ...

  8. 提高 ASP.NET Web 应用性能的 24 种方法和技巧(转载)

    在这篇文章中,将介绍一些提高 ASP.NET Web 应用性能的方法和技巧.众所周知,解决性能问题是一项繁琐的工作,当出现性能问题,每个人都会归咎于编写代码的开发人员. 以下为译文 那性能问题到底该如 ...

  9. SPA应用部署时首屏启动慢问题解决方案

    SPA应用部署时首屏启动慢问题解决方案 使用vuejs开发的单页应用,打包部署上线后,发现首屏启动时间达到了惊人的10s左右,于是开始优化,目前使用到的总结如下: 巧用webpack插件 1.抽取cs ...

  10. Java中反射和Unsafe破坏单例设计模式

    有如下单例模式设计代码: class Singleton { private String info = "HELLO SHIT"; private static Singleto ...