windows安装SonarQube最新版本+SonarScanner搭建运行python项目代码分析

sonarqube-26.1.0.118079+postgresql15+SonarScanner

使用背景

最近工作有代码扫描的需求,问了下AI目前最常用的代码扫描工具就是SonarQube,但网上的安装教程都有点老了,记录一下安装过程中遇到的问题。

安装相关环境

注意:sonarqube对各个环境要求的版本很严格,不支持的版本就运行不起来,一定要按照版本要求安装

1.java环境:JDK(18不行、25也不行),我最终安装成功的是JDK21

2.数据库:postgresql15.15,支持Version: 13 to 17

3.数据库连接工具:DBeaver25.3.3

4.node24.13,扫描js代码需要用

5.sonarqube26.1.0.118079,当前最新版

6.postgresql驱动42.8.7

7.扫描器SonarScanner8.0.1,需要扫描哪个电脑的项目就在哪个机器上下

sonarqube资源下载
sonarqube相关环境资源下载

安装JDK

下载OpenJDK21U-jdk_x64_windows_hotspot_21.0.9_10.msi文件,一路next,安装后配置path环境变量

注意:有多个jdk环境时,配置环境变量需要把当前的jdk路径移到最前面

安装postgreSQL

下载postgresql-15.15-2-windows-x64.exe文件,参考了其他安装文章,未安装pgAdmin4,一路next

如果需要配置其他电脑可连接该数据库,需要修改配置文件安装目录\PostgreSQL\15\data\pg_hba.conf,修改配置后需重启

bash 复制代码
# 允许来自 192.168.10.0/24 网段的连接(推荐)
host    all             all             192.168.10.0/24         md5

# 或者允许任意 IP(仅测试环境)
host    all             all             0.0.0.0/0               md5

安装DBeaver

下载dbeaver-ce-25.3.3-x86_64-setup.exe文件一路next即可

安装完成后使用DBeaver连接postgres数据库

创建sonar数据库

安装nodejs

下载node-v24.13.0-x64.msi文件,一路next,配置环境变量

安装SonarQube

下载sonarqube-26.1.0.118079.zip,解压,进入配置目录安装目录\sonarqube-26.1.0.118079\conf\sonar.properties,修改配置

bash 复制代码
sonar.jdbc.username=postgres
sonar.jdbc.password=yourpassword
sonar.jdbc.url=jdbc:postgresql://127.0.0.1:5432/sonar


sonar.web.javaOpts =-Xmx2048m -Xms2048m -XX:+HeapDumpOnOutOfMemoryError
sonar.ce.javaOpts =-Xmx9000m -Xms9000m -XX:+HeapDumpOnOutOfMemoryError
sonar.search.javaOpts =-Xmx1024m -Xms1024m -XX:+HeapDumpOnOutOfMemoryError

sonar.elasticsearch.heap.size=1g
 
sonar.web.host=0.0.0.0
sonar.web.port=9089
sonar.search.port=55690

安装postgresql驱动

下载驱动postgresql-42.7.8.jar后,把该文件放到安装目录\sonarqube-26.1.0.118079\lib\jdbc\postgresql下

运行sonarQube

进入运行目录,安装目录\sonarqube-26.1.0.118079\bin\windows-x86-64,运行StartSonar.bat

运行成功后访问http://127.0.0.1:9089/,初始密码为admin:admin,第一次登录后需要修改密码

如果需要其他机器可以访问可以cmd运行以下命令开放端口

bash 复制代码
netsh advfirewall firewall add rule name="Port 9089" dir=in action=allow protocol=TCP localport=9089

下载插件

1.下载中文插件 sonar-l10n-zh-plugin-25.10.jar

把下载的jar文件放到安装目录\sonarqube-26.1.0.118079\extensions\plugins,重启sonarqube

也可以直接在Marketplace 搜索chinese,安装

2.sonarqube内置很多扫描规则,如果觉得内置的不够详细,可以下载java第三方扫描规则findbugs

安装SonarScanner CLI

在需要扫描项目的机器上下载SonarScannerCLI下载地址

下载后解压,将安装目录\sonar-scanner-8.0.1.6346-windows-x64\bin添加到环境变量Path,cmd运行sonar-scanner.bat -h,输出帮助信息则安装成功

编辑安装目录\sonar-scanner-8.0.1.6346-windows-x64\conf\sonar-scanner.properties,配置sonarqube服务器

注意:本机下载是配置的127.0.0.1,其他机器需要配置成下载SonarQube机器的ip

扫描项目

新建项目

在sonarqube管理台新建项目,选择手工

输入项目名称,选择默认配置

分析方法选择本地

创建令牌

创建成功,页面上提示了不同语言执行分析的例子,可以参考,本文介绍CLI方式运行分析python项目

项目配置

进入项目主目录,新建sonar-project.properties文件,编辑配置,sonar.projectKey是你在管理台新建的项目名称

sonar.token是管理台显示的项目令牌

python 复制代码
sonar.projectKey=test
sonar.projectName=test
sonar.projectVersion=1.0

sonar.sources=.
sonar.exclusions=**/__pycache__/**,**/*.pyc

sonar.python.version=3.10
sonar.sourceEncoding=UTF-8
sonar.scm.provider=git
sonar.token=yourtoken

运行项目代码分析

cmd进入项目主目录,运行命令,等待结束,显示分析成功

bash 复制代码
sonar-scanner

进入管理台查看报告

相关推荐
imatt4 小时前
Qt Creator 在Windows下编译信息乱码
windows·qt
就不掉头发5 小时前
计算机的虚拟内存
linux·服务器·windows
春风霓裳7 小时前
window设置永不更新
windows
luyun0202029 小时前
专防未成年,吾爱出品
网络·windows·figma
love530love19 小时前
【笔记】AutoClaw NSIS 安装器卡死、进程杀不掉、目录删不了?我是这么解决的
人工智能·windows·笔记·agent
大模型码小白1 天前
JAVA 集合框架进阶:List 与 Set 的深度解析与实战
java·开发语言·人工智能·windows·语言模型·list·ai编程
XUHUOJUN1 天前
AKS 不是安装在 Windows Server 上,而是运行在 Windows Server 之上的 Azure 平台能力
windows·架构·k8s·azure local·azure stack
Wild_Pointer.1 天前
高效工具实战指南:Procexp64进程资源管理器
c++·windows
这是柠檬君1 天前
Microsoft Activation Scripts(MAS)最新版!
windows·office
xinhuanjieyi1 天前
cargo在windows系统下编译成exe,用everything搜索路径
windows·everything