首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Sonarqube和Jenkins安装在windows 64 bit - jre上这个时候是出乎意料的。

Sonarqube和Jenkins安装在windows 64 bit - jre上这个时候是出乎意料的。
EN

Stack Overflow用户
提问于 2017-04-26 10:26:16
回答 2查看 822关注 0票数 0

我们已经在Jenkins构建服务器上安装了Jave JRE 8,并成功地安装了Sonarqube,并且它在本地IP:9000上运行良好。Jenkins项目似乎也被正确设置,并且安装了SonarQube插件。

当使用SonarQube设置MS构建项目时,它会在流程结束时出错。Sonarqube分析步骤工作良好,构建本身运行良好,但是当我们添加SonarQube end分析时,它会出错:

代码语言:javascript
运行
复制
10:17:19 \Jenkins\tools\hudson.plugins.sonar.MsBuildSQRunnerInstallation\Sonar_Scanner_for_MSBuild\sonar-scanner-3.0.1.733\bin..\jre was unexpected at this time. 
10:17:19 The SonarQube Scanner did not complete successfully

我们试图相应地调整JAVA_HOME和PATH变量,但不知道如何修复。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-04-26 19:24:52

当我从运行程序切换到MSBuild扫描仪时,我在Jenkins服务器上遇到了这个问题。我通过让jenkins插件安装用于SonarQube 2.3.0.527的MSBuild扫描程序来修复它,而不是最新版本2.3.1.554。

希望这能有所帮助!

票数 0
EN

Stack Overflow用户

发布于 2017-05-22 09:41:42

3.0版本包含了对sonar-scanner.bat的一个小更改,当扫描器的安装路径中包含括号时,它没有正确地处理这种情况。例如,安装在C:\Program Files (x86)\some\path下的扫描仪的用户将得到错误消息,如问题中所示。错误消息本身是完全没有意义的,因为在DOS中解释变量的方式,%SONAR_SCANNER_HOME%值中的括号使得语法无效,所以DOS解释器完全混乱。

脚本中出现的问题如下:

代码语言:javascript
运行
复制
set use_embedded_jre=${use_embedded_jre}
if "%use_embedded_jre%" == "true" (
  set JAVA_HOME=%SONAR_SCANNER_HOME%\jre
)

解决办法是像这样改变:

代码语言:javascript
运行
复制
set use_embedded_jre=${use_embedded_jre}
if "%use_embedded_jre%" == "true" (
  set "JAVA_HOME=%SONAR_SCANNER_HOME%\jre"
)

重要的是在整个变量赋值周围有双引号,而不仅仅是在=操作符的右边。否则,如果%SONAR_SCANNER_HOME%由于嵌入空格已经包含双引号,则脚本将无法工作。

这已在3.0.3中得到修正,并可用于下载

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43631528

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档