2010-09-20 10 views
10

Algo extraño aquí chicos.Team Build, montaje en modo SGen & Mixed

Tenemos una solución bastante compleja (111 proyectos distribuidos en asp.net, silverlight, WFC, Ria Services, etc.), que se compila correctamente en mi cuadro dev (2010). Si enciendo VS en nuestra máquina de compilación, también puedo construir la solución correctamente. Sin embargo, cuando doy cola a una compilación, casi llega a su fin, hasta que intenta ejecutar SGen, en ese momento aparece el antiguo "Conjunto de modo mixto construido contra la versión 'v2.0.50727' del tiempo de ejecución y no se puede cargar en el 4.0 tiempo de ejecución sin información de configuración adicional ". castaña.

He buscado en Google para encontrar una solución, pero parece que nada hace el trabajo - el error se produce en el momento de compilación en lugar del tiempo de ejecución, y he agregado la clave de activación v2 al archivo de configuración del equipo sin efecto. No hay pruebas en la solución que puedan hacer que las cosas se carguen.

¿Alguna idea? ¿Nadie? Particularmente confundido que VS puede construir bien en el servidor, pero falla la compilación del equipo.

Respuesta

18

El siguiente truco ha funcionado para mí (ref.)

Edición (o crear si no existe) sgen.exe.config que debería estar ubicado en:

  • C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools\

o en un sistema operativo de 64 bits:

  • C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools\

A continuación, añadir:

<configuration> 
    <startup useLegacyV2RuntimeActivationPolicy="true"> 
    <supportedRuntime version="v4.0"/> 
    </startup> 
</configuration> 

Por lo que yo entiendo, añadiendo el mismo fragmento en el app.config del proyecto podría no ser suficiente ya que no es leído por la herramienta sgen: (

+1

Nota: El fragmento de arriba debe colocarse dentro de las etiquetas ''. –

+0

@Darrell. Actualizado en consecuencia. Gracias. –

+2

También tenga en cuenta que en un sistema x64 esto debería ser C: \ Archivos de programa (x86) \ Microsoft SDKs \ Windows \ v7.0A \ bin \ NETFX 4.0 Tools \. Puede haber una versión x64 de sgen.exe y esa no funciona. – RandomEngy

Cuestiones relacionadas