命令行错误导致的MSBuild - System.Xml所需的引用

时间:2010-11-05 13:34:37

标签: msbuild

我正在创建一个批处理脚本,它将获取应用程序代码的最新版本,然后使用msbuild构建它。一切都有效,直到msbuild部分。这是运行msbuild的行:

C:\WINDOWS\Microsoft.NET\Framework\v3.5\msbuild.exe "code/Solution.sln" /p:Configuration="Debug"

整个地方的事情错误 - 所有的错误都说:

C:\code\project1\codefile1.vb(882): error BC30009: Reference required to assembly 'System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' containing the implemented interface 'System.Xml.Serialization.IXmlSerializable'. Add one to your project.

Visual Studio 2008中的所有内容都没有错误地构建。这里发生了什么?

2 个答案:

答案 0 :(得分:6)

这可能是关于出错的最详细描述:

MSBuild Can't Find Secondary References

Resolving Binary References in MSBuild

简而言之: 您的项目引用程序集X. X包含一个类,它实现了程序集Y的接口。 您的项目不引用Y,因此MSBuild失败。 Studio的功能更加智能,可以找到第二级参考。

答案 1 :(得分:2)

完成它所说的内容并将System.Xml的引用添加到您的项目中。

项目 - >添加参考