Sonar 5.6.1,MsBuild.SonarQube.Runner 2.1,Windows 8.1
当我使用跑步者分析解决方案时,它会在'end'组件上失败。控制台中最相关的错误行是:
错误:声纳值为0347AEA0-AA8A-48D4-ACF3-D9D7B3ED28B0的无效值
GUID似乎代表我的解决方案中的项目。我在工作区域内的所有文件中搜索了文本“sonar.tests”,并确定问题位于由早期组件之一生成的sonar-project.properties文件中。它包含一行如下:
0347AEA0-AA8A-48D4-ACF3-D9D7B3ED28B0.sonar.tests = \
接着是(大量 - 太大而无法在此处显示)以逗号分隔的文件列表。
BUG:用于分隔条目的逗号字符是Windows操作系统上文件路径中的合法字符。列表中的几个文件路径包含一个或逗号字符。跑步者遇到这样的文件路径时会跳闸。
文件列表不仅包含源文件,还包含包含测试数据的文件。包含逗号字符的文件是测试数据。
当使用MsBuild.SonarQube.Runner组件时,这个失败对我们来说是一个阻碍。从文件名中删除逗号字符是不切实际的,也不是在文件夹结构中移动测试文件。