Visual studio 2010 使用msbuild从命令提示符运行代码分析时遇到问题

Visual studio 2010 使用msbuild从命令提示符运行代码分析时遇到问题,visual-studio-2010,msbuild,code-analysis,fxcop,static-code-analysis,Visual Studio 2010,Msbuild,Code Analysis,Fxcop,Static Code Analysis,我在瞄准.NET3.5时使用VS2010RC。我可以通过VisualStudio毫无问题地运行代码分析。然而,当我尝试在我们的CI服务器上运行代码分析时,它并没有得到执行。尝试使用msbuild 4.0生成时,出现以下异常: C:\Program Files(x86)\MSBuild\Microsoft\VisualStudio\v10.0\CodeAnalysis\Microsoft.CodeAnalysis.targets(129,9):错误MSB4018:“CodeAnalysis”任务意

我在瞄准.NET3.5时使用VS2010RC。我可以通过VisualStudio毫无问题地运行代码分析。然而,当我尝试在我们的CI服务器上运行代码分析时,它并没有得到执行。尝试使用msbuild 4.0生成时,出现以下异常:

C:\Program Files(x86)\MSBuild\Microsoft\VisualStudio\v10.0\CodeAnalysis\Microsoft.CodeAnalysis.targets(129,9):错误MSB4018:“CodeAnalysis”任务意外失败

C:\Program Files(x86)\MSBuild\Microsoft\VisualStudio\v10.0\CodeAnalysis\Microsoft.CodeAnalysis.targets(129,9):错误MSB4018:System.TypeLoadException:无法从程序集“mscorlib”加载类型“System.Runtime.Versioning.TargetFrameworkAttribute”,版本=4.0.0,区域性=中性,PublicKeyToken=B77A561934E089


正如我所说,当我运行它时,它运行良好。与之相比,您将有困难的时间来设置它

我将在构建服务器上安装VS2010。问题解决了

注意:

生成服务器应该是开发人员环境(而不是生产环境)的复制。

因为生成计算机仍然运行.net 4 beta 2,而不是rc(DLL是用rc构建的)。我将尝试升级,看看这是否能解决问题。我今天花了很多时间在这方面,有几件事需要做。首先,您必须传入/p:FxCopDir=“指向FxCop目录的路径”。此目录包含所有FxCop文件,包括在代码分析期间使用的exe和必需的DLL。安装VS后,由于安装创建了注册表项,所以一切正常。要解决此问题,您必须修改C:\Program Files(x86)\MSBuild\Microsoft\VisualStudio\v10\CodeAnalysis\Microsoft.CodeAnalysis.Targets并删除注册表上的依赖项。您是我听到的第一个说Peter的人。为什么您认为构建环境应该复制dev服务器而不是prod环境?构建服务器用于将源代码(文本文件)编译成可执行文件,然后对这些文件运行测试。这也是开发人员机器正在做的事情。生产环境(服务器)只是运行最终的应用程序,没有编译、测试、代码分析等。。。你怎么认为?