2017-03-09 4 views
8

Wir haben eine Builddefinition in TFS 2015, die mit Visual Studio 2015-Projekten und -Lösungen gut funktioniert haben. Wir haben uns jetzt für ein Upgrade auf Visual Studio 2017 entschieden und möchten daher Visual Studio 2017 in der Visual Studio-Build-Aufgabe anvisieren. Wir haben Visual Studio 2017 auf dem Build Agent installiert. Leider sind die einzigen verfügbaren Optionen in der Visual Studio-Build-Aufgabe 2012, 2013, 2015 und Latest. Wir haben es zuletzt versucht, aber Visual Studio 2017 wird auf dem Build-Agent nicht gefunden. Es wird auch nicht mit der Msbuild-Task funktionieren.TFS 2015 Visual Studio-Build-Task unterstützt nicht VS 2017

+0

"haben entschieden" "[...] auf dem Build-Agent installiert" Bitte sagen Sie uns, dass dies nicht ist, wie es aussieht ... Dinge wie diese sollten nicht getestet werden auf die Produktionsumgebung ... – swe

+1

Wer hat schon eine Produktionsumgebung erwähnt? Ich verstehe deinen Standpunkt überhaupt nicht. – Quattordici

Antwort

1

Es scheint, dass die Updates für die Build-Tools über die Befehlszeile des VS2017-Installationsprogramms installiert werden.

Siehe die docs für Details.

+0

Ich habe kein Problem mit den Build-Tools auf dem Build-Agent. Das Problem ist, dass die eingebauten Build-Aufgaben in tfs nicht wissen, wie man die Build-Tools 2017 findet. Für jetzt scheint es, dass wir den Befehlszeilenweg haben müssen. – Quattordici

+0

@Quattordici, Wie wäre es mit MSBuild Aufgabe statt Visual Studio Build Schritt, dann geben Sie den Speicherort von MSBuild 15.0? –

+0

@ Cece-MSFT Das war auch meine erste Idee. Es hat nicht funktioniert, da es den angegebenen Pfad nicht finden würde. Und damit auf altes msbuild zurückgreifen. Sehr eigenartig! Ich nehme an, dass es nach dem Pfad auf dem Build-Agent sucht. – Quattordici

2

VS2017 RTM wurde kürzlich veröffentlicht, während TFS2015 zuvor veröffentlicht wurde. Aus diesem Grund gibt es in VS Build Task in TFS2015 Server keine VS2017-Option. Wenn Sie Ihren Server auf das neueste TFS2017 aktualisieren, würden Sie die Option "Visual Studio" 15 "(Vorschau)" in VS Build Task angezeigt, die die Version für VS2017-Vorschau ist. Und in der Funktion wird die Option auf VS2017 aktualisiert, das ist das gleiche wie VSTS.

+0

danke für die Details. Um zu überprüfen, ob wir einen TFS 2015-Server für Unternehmen haben und es keinen Plan für die Aktualisierung auf Roadmap 2017 gibt, können wir keine der neuen Sprachfunktionen in C# 7 verwenden, da VS2017 nicht erkannt wird. – Tedford

+0

@Eddie - MSFT verweisen wir auf offizielle Anweisung, in VS2017 nicht mit TFS 2015 Update 3 – StingyJack

+0

@ Eddie-MSFT verwendet werden: Ich kam auch in dieser Ausgabe, mein TFS 2017 nicht zeigen noch nicht Visual Studio 2017 in VS Version Dropdown in VS Build-Aufgabe. Ist es möglich, dies manuell zu aktualisieren? Wenn ja, lass mich bitte die Schritte wissen. – Bandara

1

wir stehen vor einem ähnlichen Problem und es ist uns nicht möglich, uns selbst zu aktualisieren, da es auf Unternehmensebene gepflegt wird, auf die wir nicht so viel Einfluss nehmen können. Unser Team wollte jedoch auf VS2017 umsteigen und die Features von C# 7 nutzen. Deshalb haben wir es auch mit dem Ersetzen der Build-Schritte von Visual Studio Build zu MSBuild versucht. Leider hat dies nicht wie erwartet funktioniert (wir haben während des Builds einige Fehler bekommen).

Da unser Hauptziel die Verwendung der C# 7-Funktionen ist, haben wir nach einer Möglichkeit gesucht, dies zu dem Zeitpunkt mit Visual Studio 2015 auf dem Build Server noch zu erreichen. Am Ende haben wir das nugget-Paket Microsoft.Net.Compilers verwendet, das bei Verwendung in einem Projekt diesen Compiler anstelle des installierten verwendet. Mehr dazu finden Sie in dieser Thread.

7

Ich habe ein ähnliches Problem und gelöst von VS2017 in meinem Build-Agent-Server installieren und MSBuild Konfiguration meiner MSBuild 15,0 Ordner zeigen:

  1. hinzufügen MSBuild Build-Schritte
  2. Auf den erweiterten Optionen erweitern und den 'Weg zum MSBuild' wie das Bild unten ausfüllen:

    'C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin' 
    

    enter image description here

+0

Dies ist die einzige Lösung, die funktioniert. Manchmal ist das Hinzufügen eines '/ tv: 15.0' zu den msbuild args notwendig – StingyJack

0

Hinzufügen Nur eine andere Sache: wenn Sie benutzerdefinierte bauen Vorlage stellen Sie sicher, verwenden sie zu bearbeiten und ändern Sie den ToolPath Attributwert:

C: \ Program Files (x86) \ Microsoft Visual Studio \ 2017 \ Enterprise \ MSBuild \ 15.0 \ Bin

Verwandte Themen