5
私はクルーズコントロールサーバーにVMでビルドを実行しています。私がしたのは、ソースコントロールをPerforceからGitに変更しただけで、ビルドは失敗しています。クルーズコントロール.Net例外書き込みmsbuild-results.xml
CCNetコンフィグ
<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>
ログを構築
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>
フォルダC:\ビルドします\ Pcp_Mainアーティファクト\が存在し、ビルドを実行しているユーザーは、フォルダへの書き込みアクセス権を持っている\ 。
ロギングDLLをRodemeyer.MsBuildToCCnet.dllに変更しようとしましたが、同じ例外が発生します。
プロジェクトはコマンドラインからも問題なく構築されます。
このエラーはstackoverflow全体で検索していましたが、解決策が見つかりませんでした。今私はそれを見つけて何か他のものを探していました...そして、これが...人生があなたにレモンを与えるときに見つけました..... – spankmaster79
これは助けてくれてうれしい! – James
ビルドの開始時に、以前のビルドをクリーンアップしていたため、MSBuildログファイルに書き込まれていたものが含まれていたため、この問題が発生しました。おっとっと。 –