MSBuildを使用してビルドしようとすると、私は奇妙な問題に直面しています。MSBuild - プロジェクト参照の作成中に競合状態が発生する
私はMSBuildを使用して、/ m(並列ビルド)とBuildProjectReferencesをtrueに設定したソリューションファイルをビルドしています。 slnファイルにA.vcxprojとB.vcxprojがあるとします.BにAへのプロジェクト参照があります。 プロジェクトが最初にビルドを開始し、コンパイル中にBプロジェクトがビルドを開始しますプロセスは(並列ビルド以降)ビルドAを呼び出すでしょう。 同じプロジェクトAをビルドしようとするプロセスが2つあり、アクセスの問題が発生するため、競合状態が発生します。
MSBuildは、Aがビルディングを終了していない場合、またはBを呼び出してもAがビルド中であり、ビルドが完了するのを検出した場合、理想的にはビルドBを呼び出すべきではありません。 これは発生しません。また、これはMSBuildでのみ発生します - 私はVS2015 IDEからソリューションファイルをビルドしようとしません。
MSBuildがこのように動作する理由は何ですか?
どのMsBuildのバージョン、どのVisual C++のバージョンですか?それは影響を与えるかもしれない。 – jessehouwing
VS 2015およびMSBuild 14.0 – comingbacktolife