Ich erhalte den folgenden Fehler, wenn ich MSBuild benutze. Der Fehler, den ich bekomme, ist:
C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Microsoft.Common.targets (2769,5): Fehler MSB3086: Der Task konnte "sgen.exe" mit dem SdkToolsPath nicht finden "" oder der Registrierungsschlüssel "HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Microsoft SDKs \ Windows \ v8. 0A \ WinSDK-NetFx40Tools-x86 ". Stellen Sie sicher, dass der SdkToolsPath festgelegt ist und die Werkzeug befindet sich in der korrekten prozessorspezifischen Position unter dem SdkToolsPath und dass das Microsoft Windows SDK installiert ist
Bisher habe ich Folgendes getan:
1) Installieren Sie Windows SDK v8 von hier
2) Ich habe bestätigt, dass der Registrierungsschlüssel "HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Microsoft SDKs \ Windows \ v8. 0A \ WinSDK-NetFx40Tools-x86" in der Registrierung vorhanden ist
3) Der Registrierungsschlüssel von 2 oben zeigt auf den Pfad "C: \ Programme \ Microsoft SDKs \ Windows \ v8.0A \ bin \ NETFX 4.0 Tools" und ich habe bestätigt, dass der Pfad existiert und dass sgen.exe befindet sich in diesem Verzeichnis
4) Ich habe auch einige meiner eigenen Recherchen durchgeführt und bin auf diesen SO-Beitrag gestoßen. , aber die Antwort beinhaltet die Installation von Visual Studio auf dem Server selbst, was für mich keine Option ist. Ich möchte jedoch darauf hinweisen, dass ich einen anderen Build-Server mit der gleichen Konfiguration habe und es funktioniert gut, so dass meine temporäre Arbeit darin besteht, es auf diesem Server zu erstellen und dann den Build zu kopieren.
Hat jemand einen Einblick in das Problem?
Ich konnte es endlich lösen. Schritte zur Lösung:
1) Deinstallieren Sie Windows SDK 8 über Programm und Funktionen.
2) Installieren Sie Windows sdk 8.1 von hier .
3) Bearbeiten Sie die Registrierungsschlüssel
unter
HKLM \ SOFTWARE \ Wow6432Node \ MSBuild \ ToolsVersions \ 11.0
bis
$ (Registrierung: HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Microsoft SDKs \ Windows \ v8.1A \ WinSDK-NetFx40Tools-x 86 @ Installationsordner)
und die Registrierungsschlüssel
bis
$ (Registrierung: HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Microsoft SDKs \ Windows \ v8.1@InstallationFolder)
Ich hoffe, dass dies jemand anderen in der Zukunft helfen könnte, wenn sie auf dasselbe Problem stoßen.
Diese Antwort hat bei mir nicht funktioniert. Ich hatte bereits das Windows 8.1 SDK, aber nicht die Version 8. Ich musste Version 8 herunterladen, die das .Net Framework 4.5 SDK enthielt. Das .Net Framework 4.5 SDK (kommt mit Windows 8 SDK) und 4.6 SDK (kommt mit Visual Studio 2015). Ich habe VS 2015.
Alle SDKs können einzeln unter Ссылка heruntergeladen werden.
Ich habe das 4.5 SDK heruntergeladen und es installiert (Hinweis ohne die Application Verifier-Funktion, da dies einen Installationsfehler verursacht). Nach einem Neustart funktionierte mein Build gut.
Ich hatte den gleichen Fehler, sgen.exe
fehlt bei der Verwendung von MSBuild. Ich musste die Registrierungswerte nicht ändern. Ich stellte sicher, dass der MSBuild-Befehl die Version verwendete, die ich installiert hatte. Ich hatte Visual Studio 2015 und 2017 auf meinem PC installiert.
In meinem Fall war es C:\Program Files (x86)\MSBuild.0\bin
. Also habe ich den Pfad zu diesem Wert festgelegt, und als ich meine Batch-Datei mit dem neuen Pfadsatz ausgeführt habe, wurde es erfolgreich kompiliert.
Tags und Links .net windows visual-studio-2012 msbuild