我们在sonaqube质量配置文件中添加了一些fxcop规则。当在团队城市中重新运行声纳步步骤时,它现在因以下错误而中断:
ERROR: Error during SonarQube Scanner execution
java.lang.IllegalArgumentException: No FxCop analysis has been performed on this project, whereas it contains cs files: Verify that you are using the latest version of the SonarQube Scanner for MSBuild, and if you do, please report a bug. In the short term, you can disable all FxCop rules from your quality profile to get rid of this error.
at org.sonar.plugins.fxcop.FxCopConfiguration.checkMandatoryProperties(FxCopConfiguration.java:151)
at org.sonar.plugins.fxcop.FxCopConfiguration.checkProperties(FxCopConfiguration.java:138)
如果您删除了fxcop规则,那么它将再次起作用。
我在TeamCity中设置了一个构建步骤,以使用fxcop运行器类型运行fxcop-经过一番混乱之后,我最终使它运行并创建了报告。
我将fxcop规则重新添加到声纳质量配置文件中,并且遇到相同的错误。
将fxcop构建步骤添加到teamcity是否正确?我刚刚错过某处的设置吗?
经过大量的Google搜索后,我开始认为我们不应该再使用fxcop了吗?有一个c#fxcop插件已被弃用,如果您查看sonarqube中的fxcop设置,则每个字段都已被弃用。
现在甚至有可能在sonarqube中运行fxcop规则吗?
编辑:
因此,我认为fxcop的构建步骤不正确,并且应该按照this文档启动声纳扫描仪时在构建步骤中指定fxcop参数-但这显然是 fxcop插件已弃用。
下一个问题是由于路径中的空格而导致错误:/d:"sonar.cs.fxcop.fxCopCmdPath=C:\Program Files (x86)\Microsoft Fxcop 10.0/FxCopCmd.exe"
10:05:28.209 10:05:28.206 Unrecognized command line argument: Files
10:05:28.209 10:05:28.208 Unrecognized command line argument: (x86)\Microsoft
10:05:28.209 10:05:28.208 Unrecognized command line argument: Fxcop
10:05:28.21 10:05:28.208 Unrecognized command line argument: 10.0/FxCopCmd.exe
10:05:28.21 Expecting at least the following command line argument:
- SonarQube project key