wake-up-neo.net

TFS 2013, das .NET 4.6 / C # 6.0 erstellt

Wir verwenden TFS 2013 als unseren Build-Server. Ich habe ein C # 6.0-Projekt gestartet und möchte, dass es erstellt wird. Ich verwende die neuen nullbedingten Operatoren und meine Build-Drosseln. Ich habe versucht, verschiedene Dinge auf dem TFS-Server zu installieren, einschließlich des Targeting Packs und von VS 2015. Ich habe versucht, den MSBuild-Argumenten /tv:14.0 zur Verfügung zu stellen.

Configuration\EntityEntityConfig.cs (270): Ungültiger Ausdrucksausdruck '.'
Configuration\EntityEntityConfig.cs (283): Ungültiger Ausdrucksausdruck '.'
Configuration\EntityEntityConfig.cs (283): Syntaxfehler, ':' erwartet
... etc.

Zu diesem Zeitpunkt habe ich keine Ahnung, was ich sonst noch versuchen soll. Anregungen wäre sehr dankbar.

35
zimdanen

Personen, die TFS 2012 verwenden, haben über folgende Erfolge berichtet:

/tv:14.0 /p:GenerateBuildInfoConfigFile=false /p:VisualStudioVersion=14.0

als Argumente für MSBuild. Möglicherweise funktioniert dies für Sie, aber für meine TFS 2013-Build-Agenten funktioniert dies bislang nicht.

Update: Ich habe es endlich geschafft, mit TFS 2013 zu arbeiten. Folgendes musste ich tun:

  1. Installieren Sie VS 2015 oder Microsoft Build Tools 2015 (Ich habe beide).
  2. Bearbeiten Sie meinen Build, um eine Buildprozessvorlage mit dem Namen TfvcTemplate.12.xaml zu verwenden. Ich vermute, dass jedes Template, das neuer als dieses ist, funktioniert, aber das DefaultTemplate.11.1.xaml wird definitiv nicht funktionieren!)
  3. Setzen Sie die MSBuild-Argumente auf /tv: 14.0 . Die anderen beiden oben genannten Argumente mussten nicht verwendet werden.
49
Marson

Es scheint, dass das Befehlsargument /tv:14.0 nicht wie erwartet funktioniert. Siehe: BuildActivity ignoriert ToolsVersion

Um dieses Problem zu umgehen, müssen Sie die Erstellungsprozessvorlage anpassen:

  1. Öffnen Sie die Vorlage in Visual Studio und suchen Sie die MSBuild for Project ausführen MSBuild-Aktivität.
  2. Setzen Sie ToolVersion auf "14.0".
  3. Stellen Sie ToolPath auf MSBuild14 als Ziel ein (standardmäßig: "C:\Programme (x86)\MSBuild\14.0\Bin").
  4. Checken Sie diese Build-Prozess-Vorlage ein und stellen Sie den Build erneut in die Warteschlange.
17
Vicky - MSFT

Wenn Sie VS 2015 auf dem Buildcomputer installieren möchten, müssen Sie einen wichtigen Schritt ausführen: Öffnen Sie es für die erste Verwendung und stellen Sie sicher, dass es lizenziert ist. Andernfalls treten weiterhin Buildfehler auf.

1
Jim Roth

Wenn Sie die Datei "DefaultTempalte.11.1.xaml" ausführen, suchen Sie nach der Aktivität "msbuild" (in dieser Vorlage gibt es 2 mit der Bezeichnung "MSBuild für Projekt ausführen") und ändern Sie die Eigenschaft "ToolPath" in den Pfad des Toolset "msbuild" (für mich war dies "). C:\Programme (x86)\MSBuild\14.0\Bin ").

Sonst ist nichts nötig.

1

Der Erstellungsprozess bestimmt, welche Version der Erstellungswerkzeuge Sie verwenden. Eine Vanilla-Build-Definition verwendet die Build-Prozessvorlage "DefaultTemplate.11.1.xaml", die für die Verwendung von Build Tools 2013 konfiguriert ist.

Der schnellste Weg, dies zu beheben, besteht darin, einfach zu "TfvcTemplate.12.xaml" zu wechseln.

Select Template

Wenn Sie die Standardvorlage ändern möchten, müssen Sie sie unter $/[Project] /BuildProcessTemplates/DefaultTemplate.11.1.xaml auschecken und dann die Argumente bearbeiten, um die BuildProcessVersion festzulegen

Edit Build Process Version

0
Steztric

Wenn Sie pgradeTemplate.xml verwenden, ändern Sie einfach den "Run TfsBuild for Configuration Folder":

1.Stellen Sie ToolPath so ein, dass es auf MSBuild14 abzielt (standardmäßig: "C:\Programme (x86)\MSBuild\14.0\Bin").

2.Überprüfen Sie diese Build-Prozessvorlage und stellen Sie den Build erneut in die Warteschlange.

Vielen Dank!