🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
> 安装sonarQube 1. 简介 qube是代码走查的工具 > . 5.4的版本,可以匹配mysql和maria一切版本,并匹配scanner2.8版本,且可以在/bin/linux-x86-64用root用户启动,安装简单,但是汉化包必须在github手动把jar包导入extensions/plugins中,并重启,但是如果集成到jenkins,用scanner扫描就需要汉化包,但是有一个bug,就是scanner一直提示未找到汉化包,看了报错,好像是qube后来是用localhost:9000/api这个方式获取是否有汉化包,但是我们旧版本只能用手动导入汉化包,所以一直通过不了 > . 6.6版本是需要mysql5.6或者以上的,而且需要相应的scanner版本,而且必须要要新建用户,不能用root启动,所以如果用root启动会出现如下错误 * [ ] 错误1 ``` sonar es can not run elasticsearch as root ``` 这时候需要创建新用户启动(6.6后,sonar加入es插件,es需要除root以外的账号启动) ``` 创建用户(root状态账号下) $ adduser sonarUser 为用户创建密码 $ passwd sonarUser 输入两次密码, 修改sonar的目录和用户组为sonarUser $ chown -R sonarUser:sonarUser /usr/local/sonar/sonarqube-6.6 重新启动sonar cd /usr/local/sonar/sonarqube-6.6/bin/linux-x86-64 $ sh sonar.sh start ``` * [ ] 错误2:这时候会有第二个错误,如果没有就跳过 ``` java.nio.file.AccessDeniedException: /usr/local/sonar/sonarqube-6.6/temp/conf/es/elasticsearch.ym ``` 解决方法:(root账号状态下) chown -R sonarUser:sonarUser /usr/local/sonar/sonarqube-6.6 * [ ] 错误3 这时候如果出现第三个错误: ``` [max virtual memory areas vm.max\_map\_count \[65530\] is too low, increase to at least \[262144\]] ``` 解决方法: 切换到root用户(sudo -i) 执行命令: sysctl -w vm.max\_map\_count=262144 查看结果: sysctl -a|grep vm.max\_map\_count 显示: vm.max\_map\_count = 262144 上述方法修改之后,如果重启虚拟机将失效,所以: 解决办法: 在   /etc/sysctl.conf文件最后添加一行 vm.max\_map\_count=262144 即可永久修改 * [ ] 错误4:可能出现mysql版本太低,自己去更换,升级到5.6或者以上 > 6.6以上版本,可能需要相应的java版本1.8或者以上 2. 安装 [https://www.sonarqube.org/downloads/](https://www.sonarqube.org/downloads/) 去这里下载相应的版本,然后去解压,运行 3. 汉化([https://github.com/gggdfdg/sonar-l10n-zh](https://github.com/gggdfdg/sonar-l10n-zh)) ![](https://img.kancloud.cn/a1/57/a157751f496f64ac1f0b167974eba872_1348x875.png) 选择对应的版本下载,放入extensions/plugins中,重启 4. 第二种汉化方法 6.6和之前的版本在update center中(**Administration -> system -> Update Center -> Available**) ![](https://img.kancloud.cn/94/71/9471306a1e52eb4b4fbd133fb72002ba_1639x376.png) 6.7在Administration -> system -> AvailableMarketplace 之后直接在Administration -> Marketplace 5. 默认的sonar账号和密码 用户名:admin 密码:admin