简介

SonarQube 是一个开源的代码质量管理系统。

功能介绍:

  • 15种语言的静态代码分析

    Java、JavaScript、C#、TypeScript、Kotlin、Ruby、Go、Scala、Flex、Python、PHP、HTML、CSS、XML和VB.NET
  • 检测代码 bugs 和 漏洞
  • 检查安全热点
  • 跟踪代码坏味道,并修复技术债务
  • 代码质量度量及历史变更记录
  • CI/CD 集成
  • 可扩展,社区有超过 60 多个插件

支持平台

Java

SonarQube 仅支持 JVM 11,SonarQube scanners 支持 JVM 8 或 11。

Java Server Scanners
Oracle JRE 11 11
不支持 8 8
OpenJDK 11 11
不支持 8 8

Database

注意:SonarQube 7.9+ 已经不在支持 MySQL。

Database version
PostgreSQL 12
11
10
9.3-9.6
字符集必须设置为 UTF-8
Microsoft SQL Server 2017 (MSSQL Server 14.0)
2016 (MSSQL Server 13.0)
2014 (MSSQL Server 12.0)
Oracle 19C
18C
12C
11G
XE Editions
字符集必须设置为 UTF-8 系列
不支持驱动包 ojdbc14.jar
建议使用最新的 Oracle JDBC 驱动程序
仅支持 thin 模式,不支持 OCI

Web Browser

Browser Version
Microsoft Internet Explorer IE 11
Microsoft Edge Latest
Mozilla Firefox Latest
Google Chrome Latest
Opera Not tested
Safari Latest

验证环境

操作系统:macOS Catalina 版本 10.15.2

SonarQube:8.2.0

Oracle JDK:11

postgreSQL:12.2

安装 postgreSQL

macOS

# 下载
# 官方下载地址:https://www.enterprisedb.com/downloads/postgres-postgresql-downloads
$ wget https://get.enterprisedb.com/postgresql/postgresql-12.2-1-osx.dmg # 双击安装即可 # 验证
$ ps -ef | grep postgres # 启动
$ sudo -i -u postgres
$ ./bin/pg_ctl -D /Library/PostgreSQL/12/data start # 停止
$ ./bin/pg_ctl -D /Library/PostgreSQL/12/data stop

linux(Red Hat family)

# 安装 yum 源
$ yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm # 安装客户端
$ yum install -y postgresql12 # 安装服务器端
$ yum install -y postgresql12-server # 初始化数据库,并设置开机启动
$ /usr/pgsql-12/bin/postgresql-12-setup initdb
$ systemctl enable postgresql-12
$ systemctl start postgresql-12 # 验证
$ systemctl status postgresql-12

创建 sonar 数据库

如下为 macOS 操作步骤,Linux 操作步骤一样。

$ sudo -i -u postgres
$ psql
Password for user postgres:
psql (12.2)
Type "help" for help. # 创建数据库
postgres=# CREATE DATABASE sonar;
CREATE DATABASE # 创建 sonar 用户
postgres=# CREATE USER sonar WITH ENCRYPTED PASSWORD 'sonar';
CREATE ROLE # 设置权限
postgres=# GRANT ALL PRIVILEGES ON DATABASE sonar TO sonar;
GRANT # 修改 sonar 数据库所属者为 sonar
postgres=# ALTER DATABASE sonar OWNER TO sonar;
ALTER DATABASE # 查看数据库
postgres=# \l sonar
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-------+-------+----------+-------------+-------------+-------------------
sonar | sonar | UTF8 | zh_CN.UTF-8 | zh_CN.UTF-8 | =Tc/sonar +
| | | | | sonar=CTc/sonar
(1 row) # 查看用户
postgres=# \du sonar
List of roles
Role name | Attributes | Member of
-----------+------------+-----------
sonar | | {} # 退出
postgres=# \q

安装 SonarQube

# 下载
$ wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-8.2.0.32929.zip # 解压
$ unzip sonarqube-8.2.0.32929.zip # 修改配置文件,设置数据库
$ vi conf/sonar.properties
sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
sonar.jdbc.url=jdbc:postgresql://localhost/sonar # 启动
$ ./macosx-universal-64/sonar.sh start

访问 SonarQube

启动成功后,通过 http://localhost:9000 进行访问。

默认用户名/密码:admin / admin。

下载中文插件

在线安装中文插件,重启。

注意: 离线安装只需要下载 jar 放到 extensions/plugins 目录下,重启即可。

其他常用插件

  • Crowd
  • Bitbucket Authentication for SonarQube
  • Findbugs
  • Checkstyle
  • PMD
  • MyBatis Plugin for SonarQube
  • ShellCheck Analyzer
  • YAML Analyzer

代码质量管理 SonarQube 系列之 安装的更多相关文章

  1. 代码质量管理sonarqube部署使用

    一.sonarqube的部署 1.下载sonaqube:https://www.sonarqube.org/downloads/ 根据需要下载特定版本: 2.如果通过sonar-scanner进行代码 ...

  2. 持续代码质量管理-SonarQube Scanner部署

    1. SonarQube Scanner地址 上一篇文章我们安装了SonarQube-7.3,让我们可以在页面查看代码质量.但是具体的扫描工作则需要SonarQube Scanner完成. 下载页面 ...

  3. 使用 Sonar 进行代码质量管理

    参考资料: 使用 Sonar 进行代码质量管理 SonarQube的安装.配置与使用 SonarLint(Sonar) 代码质量管理

  4. SonarQube代码质量管理平台安装与使用

    Sonar简介 Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量,可以从七个维度检测代码质量 通过插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,JavaS ...

  5. SonarQube代码质量管理平台安装与使用--转载

    原文:http://blog.csdn.net/hunterno4/article/details/11687269 Sonar简介 Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量, ...

  6. SonarQube代码质量管理工具安装与使用(sonarqube5.1.2 + sonar-runner-dist-2.4 + MySQL5.x)

    1. SonarQube安装(sonarqube5.1.2 + sonar-runner-dist-2.4) 1.1 前提条件 1) 已安装Java环境(version:1.7+) 2) 已安装MyS ...

  7. SonarQube代码质量管理工具的安装(Linux)

    一.安装配置sonar 1.Sonar介绍 Sonar是一个用于代码质量管理的开源平台,用于管理Java源代码的质量.通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具, ...

  8. Dubbo入门到精通学习笔记(五):持续集成管理平台之sonarqube代码质量管理平台的介绍与安装

    文章目录 SonarQube的介绍 SonarQube的安装 安装简介 详细安装过程 详细使用过程 SonarQube的介绍 SonarQube是一个管理代码质量的开放平台. 可以从七个维度检测代码质 ...

  9. 代码质量管理平台之SonarQube安装部署

    一.简介 Sonar是一个用于代码质量管理的开放平台,通过插件机制,sonar可以收集不同的测试工具,代码分析工具,以及持续集成工具.与持续集成工具(比如jenkins)不同,sonar并不是简单地把 ...

随机推荐

  1. 108. Convert Sorted Array to Binary Search [Python]

    108. Convert Sorted Array to Binary Search Given an array where elements are sorted in ascending ord ...

  2. angualrjs 总结 随记(二)

    表单控制变量form 控制变量 //字段是否未更改 fromName.inputFieldName.$pristine //字段是否更改 fromName.inputFieldName.$dirty ...

  3. 使用burp插件captcha-killer识别图片验证码

    0x01 开发背景 说起对存在验证码的登录表单进行爆破,大部分人都会想到PKav HTTP Fuzzer,这款工具在前些年确实给我们带来了不少便利.反观burp一直没有一个高度自定义通杀大部分图片验证 ...

  4. python 清空list的几种方法

    本文介绍清空list的四种方法,以及 list=[ ] 和 list.clear() 在使用中的区别(坑). 1.使用clear()方法 lists = [1, 2, 1, 1, 5] lists.c ...

  5. MySQL数据库升级

    当前不少系统的数据库依旧是MySQL5.6,由于MySQL5.7及MySQL8.0在性能及安全方面有着很大的提升,因此需要升级数据库.本文通过逻辑方式.物理方式原地升级来介绍MySQL5.6 升级至M ...

  6. 【Java】 NullPointerException、ArrayIndexOutOfBoundsException、ClassCastException、ArrayIndexOutOfBoundsException、ArrayStoreException、ArithmeticException等没有异常堆栈信息

    今天工作中,临时Fix一个bug,一看日志“java.lang.ClassCastException: null”相当懵逼,没有详细堆栈信息,这咋整.虽然根据上下文可以推测代码的大致位置,但不敢拍板确 ...

  7. TensorFlow 实战卷积神经网络之 LeNet

    欢迎大家关注我们的网站和系列教程:http://www.tensorflownews.com/,学习更多的机器学习.深度学习的知识! LeNet 项目简介 1994 年深度学习三巨头之一的 Yan L ...

  8. 使用PyTorch进行情侣幸福度测试指南

    欢迎关注磐创博客资源汇总站: http://docs.panchuang.net/ 欢迎关注PyTorch官方中文教程站: http://pytorch.panchuang.net/ 计算机视觉–图像 ...

  9. List<Object>转List<T>

    今天遇到一个麻烦,公司有个项目用了一个封装dao的模板,他妈的不管是查一条数据的方法,还是查一个集合数据的方法,全都返回Object或List<Object> 由于对象是Object根本不 ...

  10. js事件的获取

    获取元素样式属性 Method DES clientWidth 获取元素宽度 clientHeight 获取元素高度(内容+内边距) document.body.clientWidth 获取body宽 ...