1

我正在尝试在 SonarQube 4.5.1 上使用 FxCop,但 FxCopCmd 失败了。

问题是,当 SonarQube 创建 FxCopCmd 调用时,他添加了参数 /aspnet。由于我的程序是 Web 项目而不是网站,因此此参数导致 4 个分析引擎异常:

C:\Program Files\Microsoft Fxcop 10.0>FxCopCmd.exe /file:G:\sbs1\workspace\Projeto2\DCX.ITLC.Web\bin\DCX.ITLC.Web.dll /ruleset:=G:\sbs1\workspace \Projeto2\target\sonar\projeto2_projeto2_DCX.ITLC.Web\fxcop-sonarqube.ruleset /out:G:\sbs1\workspace\Projeto2\target\sonar\projeto2_projeto2_DCX.ITLC.Web\fxcop-report.xml /outxsl:none /强制输出 /searchgac /aspnet

Microsoft (R) FxCop Command-Line Tool, Version 10.0 (10.0.30319.1) X86
Copyright (C) Microsoft Corporation, All Rights Reserved.

Loaded designrules.dll...
Loaded globalizationrules.dll...
Loaded interoperabilityrules.dll...
Loaded mobilityrules.dll...
Loaded namingrules.dll...
Loaded performancerules.dll...
Loaded portabilityrules.dll...
Loaded securityrules.dll...
Loaded securitytransparencyrules.dll...
Loaded usagerules.dll...
Loaded DCX.ITLC.Web.dll...
Initializing Introspection engine...
An unhandled exception was encountered during GlobalBeforeAnalysis:
...
Analysis Complete.
* 4 total analysis engine exceptions.
Writing report to G:\sbs1\workspace\Projeto2\target\sonar\projeto2_projeto2_DCX.
ITLC.Web\fxcop-report.xml...
Done:00:00:01.4219205

如果我在没有 /aspnet 参数的情况下执行相同的调用,FxCopCmd 运行良好:

C:\Program Files\Microsoft Fxcop 10.0>FxCopCmd.exe /file:G:\sbs1\workspace\Projeto2\DCX.ITLC.Web\bin\DCX.ITLC.Web.dll /ruleset:=G:\sbs1\workspace \Projeto2\target\sonar\projeto2_projeto2_DCX.ITLC.Web\fxcop-sonarqube.ruleset /out:G:\sbs1\workspace\Projeto2\target\sonar\projeto2_projeto2_DCX.ITLC.Web\fxcop-report.xml /outxsl:none /强制输出/searchgac

Microsoft (R) FxCop Command-Line Tool, Version 10.0 (10.0.30319.1) X86
Copyright (C) Microsoft Corporation, All Rights Reserved.

Loaded designrules.dll...
Loaded globalizationrules.dll...
Loaded interoperabilityrules.dll...
Loaded mobilityrules.dll...
Loaded namingrules.dll...
Loaded performancerules.dll...
Loaded portabilityrules.dll...
Loaded securityrules.dll...
Loaded securitytransparencyrules.dll...
Loaded usagerules.dll...
Loaded DCX.ITLC.Web.dll...
Initializing Introspection engine...
Analyzing...
Analysis Complete.
Writing report to G:\sbs1\workspace\Projeto2\target\sonar\projeto2_projeto2_DCX.ITLC.Web\fxcop-report.xml...
Done:00:00:02.2656975

我正在使用的组件是: - SonarQube 4.5.1 - Visual Studio Projects 1.2 的分析引导程序 - C# 3.3

我很想找到一种方法来禁用 SonarQube 上 /aspnet 参数的使用。任何帮助将不胜感激。

4

1 回答 1

0

/aspnet事实上,FxCop 10 的开关有些问题。FxCop 版本 12(与 Visual Studio 2013 捆绑在一起)可以正确处理该切换。

您描述的问题是一个已知问题,截至今天尚未修复,但有一张票:http: //jira.codehaus.org/browse/SONARVS-62

在很短的时间内,您可以在 FxCopCmd.exe 周围创建一个包装器来剥离标志。

于 2014-12-02T14:29:05.920 回答