安装sonarqube7.8版本 (对 jdk1.8 的最后一个版本)

使用 sonarqube 对 java 项目代码进行扫描的时候,java 项目的版本不能低于 sonar 的编译版本。
sonarqube:7.8-community 是 sonar 对 jdk1.8 的最后一个版本,从 7.9 以后 sonar 最低支持版本为 jdk 1.11

1.下载压缩包
官网下载最新版压缩包:sonarqube-9.2.4.50792.zip

2.配置java环境

unzip openjdk-8u40-b25-linux-x64-10_feb_2015.tar.gz -C /usr/local

# cat /etc/profile.d/java.sh 
#!/bin/bash

export JAVA_HOME=/usr/local/java-se-8u40-ri
export JRE_HOME=${JAVA_HOME}
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib  
export PATH=${JAVA_HOME}/bin:$PATH

3.系统环境设置

解决sonar的ES无法启动问题:https://www.cnblogs.com/sanduzxcvbnm/p/15777723.html

sysctl -w vm.max_map_count=262144
sysctl -w fs.file-max=65536
ulimit -n 65536
ulimit -u 4096

vim /etc/security/limits.conf 
*   -   nofile   655360
*   -   nproc    655360

4.修改sonar配置,使用MySQL数据库,修改默认端口号

# 对mysql的版本要求:MySQL >=5.6 && <8.0
# 新创建用户sonar,设置密码为:sonar,创建sonarqube数据库,授权sonar用户访问sonarqube数据库

sonar.jdbc.username=sonar
sonar.jdbc.password=sonar

sonar.jdbc.url=jdbc:mysql://192.168.2.166:3306/sonarqube?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
sonar.web.port=5000

5.创建普通用户启动使用
会使用到自带的es,不能使用root用户

useradd admin
su - admin
cd /server/sonarqube-7.8/bin/linux-x86-64
./sonar.sh start

./sonar.sh status

./sonar.sh stop

6.设置成系统服务

vim /etc/systemd/system/sonarqube.service

[Unit]
Description=SonarQube service
After=syslog.target network.target

[Service]
Type=simple
User=jdd966
Group=jdd966
PermissionsStartOnly=true
ExecStart=/bin/nohup /usr/local/java-se-8u40-ri/bin/java -Xms32m -Xmx32m -Djava.net.preferIPv4Stack=true -jar /server/sonarqube-7.8/lib/sonar-application-7.8.jar
StandardOutput=syslog
LimitNOFILE=655360
LimitNPROC=655360
TimeoutStartSec=5
Restart=always

[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl start sonarqube.service
systemctl enable sonarqube.service

7.访问
地址:http://192.168.2.153:5000
用户名:admin
密码:admin12345678 (默认密码:admin,初次登录需要修改密码)

8.安装插件

中文插件

sonarqube7.8社区版在线安装中文插件要求的sonarqube版本至少是9.2,因此没法在线安装中文插件,这里采用另外一种办法:先手动下载适合7.8版本的中文插件,然后上传到对应的插件目录下,重启即可。

地址:
https://github.com/xuhuisheng/sonar-l10n-zh
https://github.com/xuhuisheng/sonar-l10n-zh/releases

下载好对应的中文插件:sonar-l10n-zh-plugin-1.28.jar,上传到对应的目录下:$SONARQUBE_HOME/extensions/plugins,然后重启sonarqube

java项目分析插件

从上图可以看出,自带俩java的插件外,其他插件也是不能在线安装的。因此采用跟中文插件安装一样的办法

https://github.com/checkstyle/sonar-checkstyle

https://github.com/SEPMLAB/CodeHawk/releases

https://github.com/spotbugs/sonar-findbugs/

原文地址:https://www.cnblogs.com/sanduzxcvbnm/p/15777857.html