2012-10-02 20 views
6

Al ejecutar una construcción de paso MSpec en TeamCity estoy recibiendo el siguiente error en los registros del equipo de la ciudad:¿Por qué recibo una NotSupportedException al ejecutar MSpec en TeamCity?

[Step 7/7] Starting: C:\TeamCity\buildAgent\plugins\dotnetPlugin\bin\JetBrains.BuildServer.NUnitLauncher.exe #TeamCityImplicit 
[17:07:13][Step 7/7] in directory: C:\TeamCity\buildAgent\work\726e90173bc65483 
[17:07:14][Step 7/7] 2012-10-02 17:07:14,471 [4332] ERROR JetBrains.TeamCity.Utils.Runtime.ParseUtil - Failed to load assembly from file c:\mspec\mspec.exe: An attempt was made to load an assembly from a network location which would have caused the assembly to be sandboxed in previous versions of the .NET Framework. This release of the .NET Framework does not enable CAS policy by default, so this load may be dangerous. If this load is not intended to sandbox the assembly, please enable the loadFromRemoteSources switch. See http://go.microsoft.com/fwlink/?LinkId=155569 for more information. 
[17:07:14][Step 7/7] System.NotSupportedException: An attempt was made to load an assembly from a network location which would have caused the assembly to be sandboxed in previous versions of the .NET Framework. This release of the .NET Framework does not enable CAS policy by default, so this load may be dangerous. If this load is not intended to sandbox the assembly, please enable the loadFromRemoteSources switch. See http://go.microsoft.com/fwlink/?LinkId=155569 for more information. 
[17:07:14][Step 7/7] at System.Reflection.RuntimeAssembly.nLoadFile(String path, Evidence evidence) 
[17:07:14][Step 7/7] at System.Reflection.Assembly.LoadFile(String path) 
[17:07:14][Step 7/7] at JetBrains.TeamCity.Utils.Runtime.ParseUtil.LoadAssembly(String value) in c:\BuildAgent\work\e6509710c0972c73\src\Utils\src\Runtime\ParseUtil.cs:line 110 

he hecho la modificación sugerida a la machine.config y el archivo de configuración MSpec, pero no parece ayuda.

<runtime>   
    <loadFromRemoteSources enabled="true"/> 
</runtime> 

El corredor MSpec hace referencia a un archivo DLL compilado de forma local en el agente de compilación que se ejecuta correctamente localmente en Visual Studio. ¿Alguien puede explicar lo que significa este error y cómo podría resolverlo?

+0

En su registro de TeamCity, veo que el registro del 'NUnitLauncher' es correcto? –

+0

¿Está utilizando el 'mspec.exe' correcto para su marco de trabajo específico? ¿Cómo se está ejecutando localmente _desde la línea de comando_? ¿Cómo se ejecuta desde Visual Studio (usando TD.NET o ReSharper)? –

Respuesta

7

Puede verificar las propiedades de mspec.exe o la "DLL compilada" para ver si hay un security Unblock button. Tuve el mismo error y lo desbloqueé. Habilitar loadFromRemoteSources no ayudó.

+1

El enlace no funciona, enlace de trabajo: http://allen-conway-dotnet.blogspot.se/2012/01/fixing-systemiofileloadexception-upon.html – Liedman

+0

¡Gracias! Perdió el botón Desbloquear. – rickythefox

Cuestiones relacionadas