MSBuild из ошибок командной строки - требуется ссылка на System.Xml - PullRequest
5 голосов
/ 05 ноября 2010

Я создаю пакетный скрипт, который получит последнюю версию кода приложения, а затем соберет его с помощью 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 ]

6 голосов
/ 17 августа 2011

Вероятно, это наиболее подробное описание того, что происходит не так:

MSBuild не может найти вторичные ссылки

Устранение двоичных ссылок в MSBuild

Вкратце: ваш проект ссылается на сборку X. X содержит класс, который реализует интерфейс из сборки Y. Ваш проект не ссылается на Y, поэтому MSBuild завершается сбоем.Студия действует немного умнее и находит ссылку на второй уровень.

2 голосов
/ 26 августа 2013

Сделайте только то, что он говорит, и добавьте ссылку на System.Xml в ваш проект.

Проект-> Добавить ссылку

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...