我试图让Sonar在OS X盒子上本地工作,做一些概念验证工作,我已经下载了以下内容:
Sonar Qube: 4.5.6
Sonar Runner: 2.4
Sonar Qube配置为:
sonar.web.host=localhost
sonar.web.context=/sonar
sonar.web.port=9000
当我尝试将Sonar Runner与其中一个示例项目一起使用时,我收到以下错误:
ERROR: Error during Sonar runner execution
ERROR: Fail to request server version
ERROR: Caused by: Status returned by url : 'http://localhost:9000/sonar/api/server/version' is invalid : 404
如果我将控制台中的URL复制并粘贴到浏览器中,则会加载页面(显示4.5.6)。
什么原因导致脚本收到404?
这个盒子在代理后面,但没有什么应该试图去外面的世界
更新 将配置从localhost更改为使用计算机IP地址会产生超时而不是404,一切都可以通过浏览器正常工作。
答案 0 :(得分:1)
所以事实证明我的问题是JVM
没有使用我的机器的代理设置,我必须将以下内容添加到Sonar
转轮脚本。
SONAR_RUNNER_OPTS="-Dhttp.proxyHost=myproxy -Dhttp.proxyPort=80 -Dhttp.nonProxyHosts=my.local.host"
答案 1 :(得分:0)
来自sonar-runner
的HTTP查询可能会根据系统代理设置进行路由,而您的浏览器可能会使用自己的代理设置。
去检查系统范围的设置:
系统偏好设置/网络/高级/代理/绕过这些主机的代理设置&域
并确保localhost / 127.0.0.1在那里。