我在通过Jenkins运行Sonar分析时遇到问题。使用带有"调用独立声纳分析"的Post Step来启动Sonar Runner任务。我可以在仪表板中看到分析的结果,但Jenkins中的构建从未结束。Sonar中的清理任务似乎挂起了。我正在使用H2数据库,无法更改为其他数据库。
Jenkins安装在Linux机器上,Sonar版本为3.7.4
如何解决干净的快照挂起部分?
H2数据库不支持生产环境(但您似乎已经意识到这一事实)。此外,它阻止您升级到最新版本的SonarQube,因为H2上也不支持数据库迁移。
话虽如此,如果丢失项目历史记录并不重要,您可以尝试切换到最近的SQ服务器和运行程序(截至本文撰写之时分别为4.4和2.4),因为自去年以来,已经进行了不少改进和错误修复。
H2不建议按照声纳文件的规定进行生产。但如果你不熟悉声纳分析的历史,你可以做以下事情(继续使用H2):
在Linux中:
- 停止声纳:维修声纳停止
- 删除/opt/sonar/data下的sonar*.db
- 再次启动声纳:维修声纳启动
- 然后再次运行分析
它应该起作用,祝你好运。