.net 使用FinalBuilder生成时代码分析失败
更新3我现在发现,当FinalBuilder调用MSBUILD时,似乎调用了旧版本的FxCop。使用命令行,当使用VS2010版本的FxCop运行时,一切正常,但当我对VS2008使用相同的命令时,会收到错误消息.net 使用FinalBuilder生成时代码分析失败,.net,visual-studio-2010,fxcop,static-code-analysis,finalbuilder,.net,Visual Studio 2010,Fxcop,Static Code Analysis,Finalbuilder,更新3我现在发现,当FinalBuilder调用MSBUILD时,似乎调用了旧版本的FxCop。使用命令行,当使用VS2010版本的FxCop运行时,一切正常,但当我对VS2008使用相同的命令时,会收到错误消息Switch/reference是一个未知的开关 我有一个VisualStudio2008解决方案,它是使用FinalBuilder6构建的 我现在已经将解决方案转换为Visual Studio 2010,并升级到FinalBuilder 7。该解决方案使用Visual Studio中的
Switch/reference是一个未知的开关
我有一个VisualStudio2008解决方案,它是使用FinalBuilder6构建的
我现在已经将解决方案转换为Visual Studio 2010,并升级到FinalBuilder 7。该解决方案使用Visual Studio中的静态代码分析可以很好地构建,但是在FinalBuilder 7中运行时构建失败,出现以下错误:
正在运行代码分析
开关“/reference”是未知开关
MSBUILD:错误:CA0059:传递给CodeAnalysis任务的设置无效。有关详细信息,请参见输出窗口
这是什么原因造成的,我如何解决这个问题?我在任何地方都找不到/reference开关的含义,也找不到它的设置位置。由于它在VisualStudio中工作,我想它可能与FinalBuilder如何调用MSBUILD有关,但我在这里猜测
任何想法都将不胜感激
更新:代码分析设置位于.ruleset文件中,该文件是解决方案项的一部分,并在.csproj中引用,如下所示:
<RunCodeAnalysis>true</RunCodeAnalysis>
<CodeAnalysisRules>
</CodeAnalysisRules>
<PlatformTarget>x86</PlatformTarget>
<CodeAnalysisRuleSet>..\myproduct.ruleset</CodeAnalysisRuleSet>
C:\Program Files\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\FxCop\FxCopCmd.exe
/outputCulture:1033
/out:"bin\Release\myproduct.exe.CodeAnalysisLog.xml"
file:"bin\Release\myproduct.exe" /reference:"C:\makempm\5.0.0.0\mpCommon\bin\Release\mpCommon.dll"
/reference:"C:\makempm\5.0.0.0\mpConfiguration\bin\Release\mpConfiguration.dll"
/reference:"C:\makempm\5.0.0.0\mpDownload\bin\Release\mpDownload.dll"
/reference:"C:\makempm\5.0.0.0\mpStatus\bin\Release\mpStatus.dll"
/reference:"c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\mscorlib.dll"
/reference:"c:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5\System.Core.dll"
/reference:"c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Data.dll"
/reference:"c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Deployment.dll"
/reference:"c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Design.dll"
/reference:"c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.dll"
/reference:"c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Drawing.dll"
/reference:"c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Windows.Forms.dll"
/reference:"c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Xml.dll"
/directory:"C:\makempm\5.0.0.0\mpConfiguration\bin\Release"
/directory:"C:\makempm\5.0.0.0\mpDownload\bin\Release"
/directory:"c:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5"
/directory:"c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727"
/directory:"C:\makempm\5.0.0.0\mpStatus\bin\Release"
/directory:"C:\makempm\5.0.0.0\mpCommon\bin\Release"
/ruleSet:"=C:\makempm\5.0.0.0\myproduct\..\myproduct.ruleset"
/rulesetdirectory:"C:\Program Files\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\\Rule Sets"
/rule:"-C:\Program Files\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\FxCop\\Rules"
/searchgac
/ignoreinvalidtargets
/forceoutput
/successfile
/ignoregeneratedcode
/saveMessagesToReport:Active
/targetframeworkversion:v3.5
/timeout:120
依次调用FxCopCmd.exe,如下所示:
<RunCodeAnalysis>true</RunCodeAnalysis>
<CodeAnalysisRules>
</CodeAnalysisRules>
<PlatformTarget>x86</PlatformTarget>
<CodeAnalysisRuleSet>..\myproduct.ruleset</CodeAnalysisRuleSet>
C:\Program Files\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\FxCop\FxCopCmd.exe
/outputCulture:1033
/out:"bin\Release\myproduct.exe.CodeAnalysisLog.xml"
file:"bin\Release\myproduct.exe" /reference:"C:\makempm\5.0.0.0\mpCommon\bin\Release\mpCommon.dll"
/reference:"C:\makempm\5.0.0.0\mpConfiguration\bin\Release\mpConfiguration.dll"
/reference:"C:\makempm\5.0.0.0\mpDownload\bin\Release\mpDownload.dll"
/reference:"C:\makempm\5.0.0.0\mpStatus\bin\Release\mpStatus.dll"
/reference:"c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\mscorlib.dll"
/reference:"c:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5\System.Core.dll"
/reference:"c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Data.dll"
/reference:"c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Deployment.dll"
/reference:"c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Design.dll"
/reference:"c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.dll"
/reference:"c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Drawing.dll"
/reference:"c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Windows.Forms.dll"
/reference:"c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Xml.dll"
/directory:"C:\makempm\5.0.0.0\mpConfiguration\bin\Release"
/directory:"C:\makempm\5.0.0.0\mpDownload\bin\Release"
/directory:"c:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5"
/directory:"c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727"
/directory:"C:\makempm\5.0.0.0\mpStatus\bin\Release"
/directory:"C:\makempm\5.0.0.0\mpCommon\bin\Release"
/ruleSet:"=C:\makempm\5.0.0.0\myproduct\..\myproduct.ruleset"
/rulesetdirectory:"C:\Program Files\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\\Rule Sets"
/rule:"-C:\Program Files\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\FxCop\\Rules"
/searchgac
/ignoreinvalidtargets
/forceoutput
/successfile
/ignoregeneratedcode
/saveMessagesToReport:Active
/targetframeworkversion:v3.5
/timeout:120
一切都很好:
代码分析完成--0个错误,0个警告