0
点赞
收藏
分享

微信扫一扫

linux搭建SonarQube_Oracle


文章目录

  • ​​一、安装声明​​
  • ​​二、下载软件​​
  • ​​2.1. sonarqube​​
  • ​​2.2. sonar-scanner-cli​​
  • ​​三、SonarQube实战​​
  • ​​3.1. 解压​​
  • ​​3.2. 配置​​
  • ​​3.3. 环境变量​​
  • ​​3.4. 启动Sonarqube​​
  • ​​3.5. 访问Sonarqube​​
  • ​​四、SonarQube 整合Oracle​​
  • ​​4.1. 创建命名空间​​
  • ​​4.2. 创建用户和赋予权限​​
  • ​​4.3. 添加数据库配置​​
  • ​​4.4. 添加Oracle数据库驱动​​
  • ​​4.5. 线上扫描配置​​
  • ​​五、sonar整合 sonar-scanner​​
  • ​​5.1. 创建项目扫描的目录​​
  • ​​5.2. 新建 sonar-project.properties​​
  • ​​5.3. 创建扫描脚本​​
  • ​​5.4. 赋予可执行权限​​
  • ​​5.5. 运行脚本​​
  • ​​5.6. 访问web​​
  • ​​六、搭建异常汇总​​
  • ​​6.1. 编码不统一​​
  • ​​6.2. SonarQube启动报错​​
  • ​​6.3. SonarQube以root用户启动​​

一、安装声明

sonarqube8.3 最低配置要求:

linux搭建SonarQube_Oracle_root用户

二、下载软件

2.1. sonarqube

sonarqube官网

​​https://www.sonarqube.org/downloads/​​

linux搭建SonarQube_Oracle_Oracle_02


linux搭建SonarQube_Oracle_SonarQube_03


注:建议优先下载最新版本

2.2. sonar-scanner-cli

​​https://binaries.sonarsource.com/Distribution/sonar-scanner-cli​​

linux搭建SonarQube_Oracle_java_04

三、SonarQube实战

前提:提前把jdk安装好

3.1. 解压

unzip sonarqube-7.6.zip -C /app/
unzip sonar-scanner-cli-3.3.0.1492-linux.zip -C /app/

3.2. 配置

重命名 sonar-scanner

mv sonar-scanner-3.3.0.1492-linux sonar-scanner-3.3

3.3. 环境变量

#set java environment
export JAVA_HOME=/app/jdk1.8.0_144
export SONAR_RUNNER_HOME=/app/sonar-scanner-3.3
export SONAR_SCANNER_OPTS="-Xmx22528m"
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin:$SONAR_RUNNER_HOME/bin

刷新环境变量

source /etc/profile

3.4. 启动Sonarqube

./app/sonarqube-7.6/bin/linux-x86-64/sonar.sh

3.5. 访问Sonarqube

​​http://localhost:9000/​​

linux搭建SonarQube_Oracle_java_05

四、SonarQube 整合Oracle

4.1. 创建命名空间

CREATE TABLESPACE sonarqube
DATAFILE '/u01/oracle/oradata/sonar/sonarqube.dbf' SIZE 2018M
AUTOEXTEND ON NEXT 1024M MAXSIZE 20480M;

4.2. 创建用户和赋予权限

#创建sonarqube 用户,密码是sonarqube 
CREATE USER sonarqube IDENTIFIED BY sonarqube;
#给用户赋予权限
GRANT CONNECT, RESOURCE ,DBA TO sonarqube;

4.3. 添加数据库配置

#编辑配置文件
vim /sonarqube-7.6/conf/sonar.properties

#Oracle数据库连接配置
sonar.jdbc.username=sonarqube
sonar.jdbc.password=sonarqube
sonar.jdbc.url=jdbc:oracle:thin:@localhost:1521/sonar
sonar.sorceEncoding=gbk

4.4. 添加Oracle数据库驱动

/sonarqube-7.6/extensions/jdbc-driver/oracle目录下面添加Oracle的数据库驱动包ojdbc8-12.2.0.1.jar

注:此驱动包线上测试通过一直用着

4.5. 线上扫描配置

sonar.web.javaOpts =-Xmx8192m -Xms512m -XX:MaxPermSize=8192m
sonar.ce.javaOpts =-Xmx8192m -Xms512m -XX:MaxPermSize=8192m
sonar.search.javaOpts =-Xmx8912m -Xms512m -XX:MaxPermSize=8192m

注:此配置根据服务器硬件配置按需配置

五、sonar整合 sonar-scanner

5.1. 创建项目扫描的目录

mkdir project_name

5.2. 新建 sonar-project.properties

# 项目key 用于标识项目唯一性
sonar.projectKey=lis_cx
# 项目名称
sonar.projectName=lis_cx
# 项目扫描的默认版本
sonar.projectVersion=1.0
# 扫描项目的目录
sonar.java.binaries=lis_cx
# web账号
sonar.login=admin
# web 密码
sonar.password=admin
# 扫描项目的源码目录
sonar.sources=lis_cx
# 扫描项目的编码设置
#sonar.sourceEncoding=UTF-8
sonar.sourceEncoding=GBK

5.3. 创建扫描脚本

vim sonar-scanner.sh
添加内容吐下:
sonar-scanner

5.4. 赋予可执行权限

chmod u+x sonar-scanner.sh

5.5. 运行脚本

./sonar-scanner.sh

5.6. 访问web

linux搭建SonarQube_Oracle_java_05

六、搭建异常汇总

6.1. 编码不统一

解决方案
​​​oracle数据库字符编码utf-8改为ZHS16GBK​​

6.2. SonarQube启动报错

异常现象:
WrapperSimpleApp: Encountered an error running main: java.nio.file.AccessDeniedExcepti:
解决方案:​

6.3. SonarQube以root用户启动

声明:
1、SonarQube不能以root用户启动
2、如果误操作用root用户启动,再使用其他用户,导致SonarQube启动失败
3、如果jdk用户root用户安装的,sonar-scanner-3.3必须是root用户,不能为其他用户,否则sonar-scanner-3.3启动不起来
解决方案:
误操作用root用户启动,再使用其他用户,导致SonarQube启动失败
1、删除sonarqube-7.6/temp/下面的所有文件
2、删除sonarqube-7.6/logs/下面的所有文件

sonar-scanner启动异常,无权限操作:
修改sonar-scanner目录权限,和安装jdk的用户有关(默认root权限即可)


举报

相关推荐

0 条评论