MSBuild-15 Tools Version nicht akzeptiert
Habe ich installiert MSBuild (15.4.0) tools für Visual Studio 2017 auf einem build-server. Dazu habe ich den link mit der Bezeichnung "Build-Tools für Visual Studio 2017" von Visual Studio-Downloads
Den Pfad zu der MSBuild.exe ist:
C:\Program Files (x86)\Microsoft Visual
Studio\2017\BuildTools\MSBuild\15.0\Bin
Habe ich diesen Pfad in die Umgebungsvariable 'path'.
Habe ich ein powershell-Skript mit der folgenden, da der Körper für die build-Aufgabe:
msbuild '..\ "MyApplication".sln' /t:Build /tv:15.0
/p:GenerateBuildInfoConfigFile=false /p:Configuration=Release
/p:RunCodeAnalysis=True /p:VisualStudioVersion=15.0
Aber, wenn diese ausgeführt wird (alle bearbeitet von TeamCity) finde ich Folgendes im LOG:
MSBUILD : Fehler MSB1040: ToolsVersion ist nicht gültig. Die tools version
"15.0" nicht erkannt wird. Verfügbare tools Versionen "2.0", "3.5",
"4.0".
Den Dokumentation schlägt 15.0 korrekt sein sollten.
BEARBEITEN
Von der 2017-Dokumentation auf Was ist Neu in MSBuild 15 heißt es:
MSBuildToolsVersion für diese version des tools ist 15.0. Die
assembly-version ist 15.1.0.0.
Jedoch, die 2017 Dokumentation MSBuild-Befehlszeile Reference Staaten:
Für MSBuild 4.5, können Sie die folgenden Werte für die version:
2.0, 3.5 und 4.0. Wenn Sie angeben, 4.0, die VisualStudioVersion build-Eigenschaft gibt an, welche sub-toolset zu verwenden. Weitere Informationen finden Sie unter
die Sub-toolsets Abschnitt Toolset (ToolsVersion).
So, ich bin ein bisschen verwirrt über die Nomenklatur: MSBuild 15 oder MSBuild 4.5...?
- PFAD, der Zerstörer der guten Absichten. Geben Sie "wo msbuild.exe" und, sehen Sie wahrscheinlich das falsche zuerst aufgeführt.
- C:\Users\Me>wo msbuild.exe C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin\ MSBuild.exe
- Wie wäre der build command line from CMD direkt? Ich habe eingestellt, dass der Pfad auf meiner Seite, und erstellen Sie eine Visual Studio-2017 leeres Projekt erfolgreich. Sie können versuchen, erstellen Sie ein leeres Projekt mit Visual Studio 2017, dann build auf build-server mit der oben genannten Methode.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Schließlich fand ich ein Update. Es war der Weg, der falsch war.
War die Lösung ändern Sie die powershell-Zeile oben: