gpt4 book ai didi

MSBuild SonarQube Runner v1.0 在 "Generating the FxCop ruleset"之后返回代码 1

转载 作者:行者123 更新时间:2023-12-02 11:17:46 24 4
gpt4 key购买 nike

我正在使用新的 MSBuild SonarQube Runner v1.0 尝试 SonarQube。如果我在本地安装新的 SonarQube 服务器,以下命令可以正常工作,之后我可以直接构建我的解决方案,调用“end”命令,并将结果发布在 SonarQube 中:

MSBuild.SonarQube.Runner.exe 开始/key:TestKey/name:TestName/version:1.0.0.0

但是,如果我针对内部网络上现有的 SonarQube 服务器运行此命令,它总是返回退出代码 1:

15:32:40 正在创建配置和输出文件夹...
15:32:40 创建目录:c:\Test\MSBuild.SonarQube.Runner-1.0.itsonar\.sonarqube\conf
15:32:40 创建目录:c:\Test\MSBuild.SonarQube.Runner-1.0.itsonar\.sonarqube\out
15:32:41 生成 FxCop 规则集:c:\Test\MSBuild.SonarQube.Runner-1.0.itsonar\.sonarqube\conf\SonarQubeFxCop-cs.ruleset
进程返回退出代码1

似乎将很多依赖项下载到/.sonarqube中,因此与服务器的通信不是问题

我尝试过的事情:

  • 检查了 access.log、server.log 和事件日志
  • 将现有服务器升级到 v5.1.2(使用指南进行全新安装)
  • 将 sonar-csharp-plugin 升级至 v4.1
  • 右键单击服务器上的所有 .jar 文件并确保它们未被阻止
  • 直接在服务器上尝试运行器
  • (正在进行)尝试调试源代码(发生在预处理步骤中的某个位置:success 返回为 true,但错误代码为 1)<
  • 在服务器上禁用 UAC 并重新启动
  • 在服务器和客户端上重新安装 JRE,确保 PATH 和注册表中的 JAVA_HOME 均设置正确

任何帮助或指示都非常受欢迎。我已经被困在这个问题上两天了,除了继续搜寻源代码之外,想不出还有什么可以尝试的。谢谢。

最佳答案

这是一个棘手的问题!查看代码,我发现只有一条路径可以产生此输出:

  1. 生成 C# 的 FxCop 规则集时失败,因为未记录 VB.NET FxCop 规则集消息 - 请参阅 TeamBuildPreProcessor.cs#L149TeamBuildPreProcessor.cs#L185
  2. C# 的 GenerateFxCopRuleset() 调用引发了 WebException,导致调用 Utilities.HandleHostUrlWebException() - 它必须返回true 表示异常被默默吞下 - 请参阅 Utilities.cs#L153
  3. 在不记录任何消息的情况下返回 true 的唯一路径是收到 HttpStatusCode.NotFound - 请参阅 Utilities.cs#L158
  4. 控制流返回到 FetchArgumentsAndRulesets(),返回 false,然后返回到 Execute(),返回 false 以及 - 请参阅 TeamBuildPreProcessor.cs#L106
  5. MSBuild SonarQube Runner“开始”阶段(在代码中称为“预处理器”)失败 - 请参阅 Program.cs#L42

因此,在某些时候,C# FxCop 规则集生成所需的某些 SonarQube Web 服务会返回 HTTP 404 错误。

您可以监控网络流量并监听失败的 HTTP 调用吗? [此后我会继续更新这个答案]

编辑:确实,该错误是由包含特殊字符的质量配置文件名称引起的。目前此类字符的 URL 转义很严重,会导致 404。

我创建了以下票证以在即将发布的版本中解决此问题:http://jira.sonarsource.com/browse/SONARMSBRU-125

关于MSBuild SonarQube Runner v1.0 在 "Generating the FxCop ruleset"之后返回代码 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31859328/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com