sonarqube 覆盖率为0_初使用SonarQube需要注意的事项

本文介绍了SonarQube的配置要求,包括JDK和MySQL版本的匹配,数据库设置,以及Linux上以非root用户启动服务。重点讨论了启动失败时如何检查Elasticsearch的日志和调整端口,以及解决MySQL包大小限制问题。同时,讲解了如何通过Maven进行代码扫描,并配置项目ID、名称和令牌。最后提到了邮箱配置中的注意事项,如使用客户端授权码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.目前高版本SonarQube对JDK的要求都是8以上,对应要求的MySQL版本也都是5.7以上,所以如果JDK当前使用的是1.8,所以建议使用SonarQube7.0版本,对应JDK1.8和Mysql5.6或5.7。

2.为什么需要用到Mysql?Sonar在分析完代码后需要将报告上传到数据库,databasename=sonar,所以需要在数据库新建一个名为sonar的database,sonar初始完后会自动创建表。

3.Linux上启动sonar服务不能使用root身份,需要创建一个单独的用户,比如命名这个用户为sonar,然后给这个sonar用户赋予SonarQube目录的全部操作权限,然后切换到sonar用户,启动服务,启动命令 sh sonar.sh start,停止命令 sh sonar.sh stop;

4.启动成功后在web端访问 ip:9000可看到sonarqube页面

5.重点!!!如果提示启动成功,但是无法访问,那大概率是es服务启动出错了,sonar程序会依赖Elasticsearch,在启动的时候会去启动es服务,es对应的端口为9001,查看sonarqube下的log目录里的es.log文件,可以看到es的出错日志,大概率的会是接口报冲突,只要把sonar.properties里的es端口改掉即可,如改成9003,然后再启动sonar服务。如果你还是用的root身份启sonar服务,那么es这里也会报错,提示你不能用root身份,如果你用root身份启动报没有权限的错,那就是你没有给你的sonar用户赋予对应的操作权限,这也是上面第3点为什么要那么做的原因。

6.sonar启动成功后,接下来就要扫描代码了,需要以admin/admin身份登录,然后提示创建code码,这个码在扫描代码的时候要用到,是一个身份令牌,复制出来。

7.在项目代码一级目录下,即与pom.xml同级的目录下,执行mvn命令,以扫描eebo.ehr.training项目为例:

mvn sonar:sonar -Dsonar.projectKey=项目名 -Dsonar.projectName=项目名 -Dsonar.langua

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值