Tengo un servidor de control de crucero ejecutando una compilación en una VM. Todo lo que hice fue cambiar el control de fuente de Perforce a Git, y la construcción ahora está fallando.Cruise Control Expresión .Net escribiendo msbuild-results.xml
CCNet Config
<tasks>
<msbuild>
<executable>C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe</executable>
<workingDirectory>c:\Build\Pcp_Main</workingDirectory>
<buildArgs>/v:d Pcp.proj /target:Clobber;Build /property:Configurations="Debug;Release" /property:NUnitRedirectConsoleOutput=1</buildArgs>
<logger>C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MSBuild.dll</logger>
<timeout>2700</timeout>
</msbuild>
</tasks>
Build Log
Done Building Project "c:\Build\Pcp_Main\Pcp.proj" (Clobber;Build target(s)).
Build succeeded.
0 Warning(s)
0 Error(s)
Time Elapsed 00:01:32.39
MSBUILD : error MSB4015: The build stopped unexpectedly because the "ReusableLogger" logger failed unexpectedly during shutdown.
System.IO.DirectoryNotFoundException: Could not find a part of the path 'c:\Build\Pcp_Main\Artifacts\msbuild-results-2d082e8c-0e88-4c0b-9a6b-aa0e3094cab9.xml'.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
at System.Xml.XmlDocument.Save(String filename)
at ThoughtWorks.CruiseControl.MSBuild.XmlLogger.Shutdown()
at Microsoft.Build.Evaluation.ProjectCollection.ReusableLogger.Shutdown()
at Microsoft.Build.BackEnd.Logging.LoggingService.ShutdownLogger(ILogger logger)
</build>
la carpeta C: \ Build \ Pcp_Main \ Artefactos \ existe y el usuario que ejecuta la acumulación tiene acceso de escritura a la carpeta .
También he intentado cambiar el dll logging a Rodemeyer.MsBuildToCCnet.dll y me sale la misma excepción.
El proyecto también se crea desde la línea de comandos sin ningún problema.
estaba buscando en todo stackoverflow por este error, pero no pudo encontrar una solución. Ahora lo encontré yo mismo y he estado buscando algo más ... y encontré esto ... cuando la vida te da limones ..... – spankmaster79
¡Me alegro de que haya ayudado a alguien! – James
Estábamos obteniendo esto porque al comienzo de nuestra compilación, estábamos limpiando una compilación anterior, que incluía el archivo de registro de MSBuild donde escribíamos. Oops. –