Stop MSBuild Verarbeitung sofort auf Kompilierungsfehler
Ich geschrieben habe eine batch-Datei, die, wenn ausgeführt, baut Sie eine visual studio-Lösung. Die Lösung besteht aus einigen C# - Projekte. Ich bin mit MSBuild Dienstprogramm für diese. Wie kann ich verhindern das build aus weiter, wenn es Kompilierungs-Fehler in einem der Projekte?
Weitere wie bekomme ich die Fehler Meldungen und zeigt Sie auf Eingabeaufforderung?
- Dupe: stackoverflow.com/questions/3297194/...
- kein dupe, da es zum anhalten auf dem ersten Ausfall für eine Lösung.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es keine Unterstützung für den Anschlag auf erste Fehler beim erstellen eines visual studio-Lösung.
Sie können dies umgehen, indem Sie die folgenden Schritte aus:
set msbuildemitsolution=1
);RunEachTargetSeparately="true"
im Ziel mit dem Namen BuildRunEachTargetSeparately="false"
;Diese Antwort basiert auf Dan Moseley Antwort auf einen Beitrag auf MSDN-Foren.
.metaproj
- Datei generiert werden, anstatt eine.sln.proj
- Datei. #2) Diese Datei enthält nicht die EigenschaftRunEachTargetSeparately
, die ich getestet habe auf beiden .NET C# - Projekte sowie C++. #3) Diese Datei nicht erscheinen nichts anderes gilt in dem Sinne, dass es helfen kann verhindern, dass weitere Gebäude aus, die nach dem ersten Fehler ab. Alle Fehler erwähnt wurden, in Bezug auf NuGet Restore.Wäre es einfacher, Ihnen eine Antwort geben, wenn Sie gebucht haben, relevante Teile Ihrer batch-Datei. Dennoch, für den zweiten Teil der Frage, hier ist ein Beispiel, wie ich gelöst habe fast das gleiche Problem in einem unserer build-Skripte:
msbuild.exe /m /p:Configuration=Release /v:n yourSolutionFile.sln
im VS-Eingabeaufforderung, und überprüft, was passiert?>Build.log
), sicherlich Bauen.log-Datei nicht ändern, was hast du erwartet? Allerdings sollten Sie versuchen, kompilieren Sie die Konfiguration in Anteil in Visual Studio die ersten, die Ausgabe-Fenster, es sollte die gleiche Ausgabe wie durch ausführen von msbuild.