工具/原料
SonarQube
方法/步骤
1
进入配置页面
点击“质量管理”菜单 ,在质量管理页面点击右上角“恢复设置”。
2
导入代码扫描规则
在“恢复设置”对话框中点击“选择文件”按钮,选择代码扫描规则XML文件,再点击“恢复按钮”。
3
设置默认代码扫描规则
点击刚导入的代码扫描规则右边的“设为默认”链接,可将此规则设置为默认的Java代码扫描规则。
根源:scanner的container网络跟sonarqube server不在一个网络内解决:--network=host 参数
https://stackoverflow.com/questions/32097414/error-sonar-server-http-localhost9000-can-not-be-reached
根源: java中缺少sonar.java.binaries 必选参数
解决:使用 mvn compile 编译源码,并在sonar-project.properties中添加参数
其他语言请参考 https://docs.sonarqube.org/latest/analysis/languages/overview/ 获取必选参数信息。
根源: jvm默认配置太小,内存不足
解决:设置环境变量 SONAR_SCANNER_OPTS="-Xmx512m" 或者更大。
docker的解决方案为
根源:server 端ES 内存不足, 因为ES默认的heap size为2GB,而Docker的limit也是2GB。
解决:加大内存,docker Desktop端(Mac 与windows端)需要配置docker的最大内存超过4GB。或者限制ES的Heap size到750MB。
https://github.com/10up/wp-local-docker/issues/6#issue-211554733
根源:scanner无法在工程的根目录上找到sonar-project.properties文件,尽管该文件存在,但是docker -v挂在目录时不支持相对路径。
解决:将docker run -v...的运行脚本也放到工程根目录下,将当前目录挂载到/usr/src:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)