TFS 2010チームビルドの一部としてBiztalk 2009プロジェクトをビルドするには、MSBuild execタスクを使用してVS2008 devenv .exeのように。VS2008を使用してBiztalk 2009ソリューションをコマンドラインでビルドする際の.NETランタイムエラーdevenv.exe
<Exec Command=""$(BuildMachineLoc)devenv.exe" "$(BiztalkSolutionPath)" /Build "$(BuildFlavor)" /out "$(DropLocation)\$(BuildNumber)\CoreBiztalkBuildOutputLog.txt""/>
これは約95%の時間で正しく動作します。ただし、ランダムにログが次のエラーでビルドに失敗します。あなたは、それはすべてが正常にビルドされることを示してCoreBiztalkBuildOutputLog.txtファイルをチェックすると
Build FAILED.
MSB3073: The command ""C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe" "[path to my solution]" /Build "Release" /out "[path to my drop location]\CoreBiztalkBuildOutputLog.txt"" exited with code -2146233082.
を(私が構築していたサービスの名前を省略し、わずかにこれを編集しました)。失敗したビルドのログを成功したビルドと比較すると、それらは同じです。
コード-2146233082はあまり説明的ではありません。そのため、ビルドマシンのイベントビューアから実際の例外が検出されました。
Event Type: Error
Event Source: .NET Runtime
Event Category: None
Event ID: 1023
Date: 2/17/2012
Time: 2:58:41 AM
User: N/A
Computer: XXXXXXXX
Description:
.NET Runtime version 2.0.50727.3625 - Fatal Execution Engine Error (7A0BC59E) (80131506)
For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
ネットで少し突っ込んでいることは、これが何らかのCLRエラーであることを示しています。推奨される解決策は.NET Frameworkを修復することです。これまで私が使っていたビルドマシンは、所有している限り、さまざまな問題を抱えていた7歳の恐竜でした。 (〜2年)
Biztalk 2009のビルドを実行するための新しいVMのプロビジョニングが終了したので、古い物理サーバーを完全にリタイアすることができました。しかし、私の不気味さには多大な影響を与えていますが、私は新しいサーバーでこの同じランダムCLRエラーが約5%発生していることがわかりました。
これに基づいて、これは私が修正できない.NETフレームワークの何らかの欠陥であると推測しています。しかし、誰かがアイデアを持っているならば、私はすべての耳です。それは$(BuildFlavor)
がConfiguration
またはあなたが持っているかもしれArchitecture
プロパティを決定するかどうかあなたの例からも明らかではありませんので
<MSBuild Projects="$(BiztalkSolutionPath)"
Targets="Build"
Properties="Configuration=$(BuildFlavor);" />
:
[MSBuildタスク](http://msdn.microsoft.com/en-us/library/z7f65y0d%28v=vs.90)を使用する代わりに、EXEC devenv.exeでソリューションをビルドする特別な理由はありますか? %29.aspx)? – Filburt
これは以前のBizTalk管理者によって実装されたため、これについて100%確信していません。しかし、パイプラインやオーケストレーションなどでBiztalk 2009ソリューションを構築するには、Visual Studioを使用してビルドする必要があります。 (devenv.exeにexec'ingすることでVisual Studioセットアッププロジェクトを構築する必要があります) –
私はMSBuildタスクを使用してソリューションではなくBizTalkプロジェクトを構築しています。私が見たことから、セットアッププロジェクトは別の束になるかもしれません。 – Filburt