2010-11-05 13 views
5

Estoy creando un script por lotes que obtendrá la última versión del código de una aplicación, luego compilarlo usando msbuild. Todo funciona hasta la parte msbuild. Aquí está la línea que corre msbuild:MSBuild from command line errors - Se requiere una referencia a System.Xml

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

y la cosa errores por todo el lugar - todos los errores decir algo como:

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. 

Todo construye sin errores a partir de Visual Studio 2008. Lo que está pasando ¿aquí?

+0

Sin saber más acerca de su solución es difícil de decir. ¿Cuál es el * primer * error que arroja? –

+0

es el primer error, el último error y todos los errores intermedios. Referencia requerida para el ensamblaje 'System.Xml, Version = 2.0.0.0 ...' –

+0

¿Ejecuta el script en la misma computadora que se compila correctamente con VS? ¿Tiene una dependencia de System.Xml en su archivo vbproj? –

Respuesta

6

Ésta es probablemente más detalladas descripciones sobre lo que va mal:

MSBuild Can't Find Secondary References

Resolving Binary References in MSBuild

En resumen: su proyecto de montaje referencias X. X contiene una clase que implementa la interfaz de assembly Y. Su proyecto no hace referencia a Y, por lo que MSBuild falla. Studio actúa un poco más inteligente y encuentra la referencia de segundo nivel.

+0

Buena respuesta, me preguntaba qué pasaba con esta diferencia de comportamiento ... –

+0

Buena respuesta. Cuando construyo en la configuración de Debug, VS se compila bien, pero cuando construyo en la configuración de Release recibo los errores. –

2

Haz exactamente lo que dice y agrega una referencia a System.Xml a tu proyecto.

Proyecto-> Agregar referencia

Cuestiones relacionadas