2016-08-01 36 views
13

Ich habe meine TeamCity auf die neuste Version aktualisiert. (10.0 Build 42002)TeamCity - Anforderungen nicht erfüllt (DotNetFramework4.0_x86)

Seitdem kann der Build-Agent keines meiner Projekte erstellen.

Der Agent sagt mir folgendes:

Unmet requirements: DotNetFramework4.0_x86 exists 

Um dieses Problem zu lösen, habe ich schon, was in dieser Frage Stackoverflow vorgeschlagen wurde: TeamCity Agent Missing DotNetFramework4.0_x86, but not?

Leider funktioniert es nicht. Also habe ich mir die Log-Dateien angeschaut, aber nichts Seltsames gefunden. Dann schaute ich auf die Agent-Konfigurationsparameter. Ich fand dies:

DotNetFramework4.6.01055_x64_Path C:\Windows\Microsoft.NET\Framework64\v4.0.30319 
DotNetFramework4.6.01055_x86_Path C:\Windows\Microsoft.NET\Framework\v4.0.30319 
DotNetFramework4.6_x64    4.6.01055 
DotNetFramework4.6_x64_Path   C:\Windows\Microsoft.NET\Framework64\v4.0.30319 
DotNetFramework4.6_x86    4.6.01055 
DotNetFramework4.6_x86_Path   C:\Windows\Microsoft.NET\Framework\v4.0.30319 

Wie Sie das .NET 4.0 Framework DotNetFramework4.6 abgebildet wird, sehen. Für mich scheint das das Problem zu sein.

Hat jemand eine Idee, was ich tun kann, um das zu beheben?

Antwort

19

Ich benutzte die Arbeit von Greg B gefunden here, um das Problem zu lösen.

Um den Agenten wieder zum Laufen zu bringen, müssen Sie folgende Zeilen in die Konfiguration des Agenten einfügen. (Zum Beispiel befinden sich hier: C: \ Teamcity \ buildAgent \ conf \ buildAgent.properties)

DotNetFramework4.0_x86_Path=C\:\\Windows\\Microsoft.NET\\Framework\\v4.0.30319 
DotNetFramework4.0_x86=4.0.30319 
DotNetFramework4.0_x64_Path=C\:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319 
DotNetFramework4.0_x64=4.0.30319 
  1. ich den Agenten in den Windows-Dienste
  2. gestoppt klebte ich die Parameter in den buildAgent.properties
  3. ich begann die Agenten in den Windows-Diensten

Soweit ich verstehe JetBrains einen Fehler in Teamcity festgelegt und aus diesem Grunde das .NET-Frameworks wird nicht mehr gefunden werden.

Zitat von Evgeniy Koshkin

... falls Ihr Werkzeug .net 4.0 als seine erforderliche Laufzeit-Targeting Sie eigentlich vermeiden sollte .net 4.5 (6) auf dem Build-Agenten installieren. In meldet TeamCity, dass die .NET 4.0-Laufzeit verfügbar ist. Aber Ich glaube nicht, dass diese Beschränkung der installierten .net-Version sinnvoll in die meisten Fälle macht. Bevor dieser Fehler behoben wurde, meldet TeamCity die Tatsache '.net 4.0 war zuvor eine Laufzeit auf diesem Agenten' als '.net 4.0 ist eine Laufzeit auf diesem Agenten'. Es ist ein fehlerhaftes Verhalten aus meiner Sicht.

+0

2 Tage, um dies herauszufinden. Vielen Dank. :) – bmavity

+0

Wenn ich das mehr Punkte geben könnte würde ich – Ian1971

1

Die .NETFramework 4.0 und 4.6 werden mit dem gleichen Verzeichnis

DotNetFramework4.0_x64 4.0.30319 
DotNetFramework4.0_x64_Path C:\Windows\Microsoft.NET\Framework64\v4.0.30319 
DotNetFramework4.0_x86 4.0.30319 
DotNetFramework4.0_x86_Path C:\Windows\Microsoft.NET\Framework\v4.0.30319 

DotNetFramework4.6_x64 4.6.01055 
DotNetFramework4.6_x64_Path C:\Windows\Microsoft.NET\Framework64\v4.0.30319 
DotNetFramework4.6_x86 4.6.01055 
DotNetFramework4.6_x86_Path C:\Windows\Microsoft.NET\Framework\v4.0.30319 

Es gibt zwei possibles Lösungen dafür:

+0

Ich habe .NET Framework 4.0 und .NET Framework 4.6 installiert. Mit "Agent-Anforderung beheben" meinen Sie die Projekteinstellungen/Agentenanforderungen? Ich habe diese Lösung in einer anderen Stackoverflow-Antwort gesehen, aber ich kann die Anforderungen dort nicht ändern. Es gibt nur eine Option zum Hinzufügen neuer Anforderungen. – Shamshiel

+0

Ich habe gerade ein Upgrade auf v10 durchgeführt und bekomme dieses Problem. Ich habe DotNet 4.0 nicht installiert, aber mein Projekt baut mit 4.5 und baute gut auf v9.x auf. Es scheint, als ob die Anforderung von dotnet4.0 automatisch durch den MSBuild-Build-Schritt hinzugefügt wird (ich habe 4.0 nicht ausgewählt), und ich kann nicht herausfinden, wie es entfernt wird. – bj0

+0

Eigentlich sieht es so aus, als ob die Anforderung vom xUnit Test Runner hinzugefügt wird, obwohl ich 4.5 ausgewählt habe. – bj0

7

Ok, sieht so aus als wäre es ein Fehler mit dem xUnit Test Runner Plugin. Es ist auf der TC issue tracker spricht über: https://youtrack.jetbrains.com/issue/TW-46352

Der Plugin Autor es bereits festgelegt hat, müssen Sie zu v Upgrade 1.1.2: https://github.com/carlpett/xUnit-TeamCity/releases/tag/1.1.2

Sie durch die Installation der ZIP-Datei aktualisieren können nach: https://confluence.jetbrains.com/display/TCD10/Installing+Additional+Plugins

+0

Vielen Dank für die Antwort, aber ich habe nicht das Plugin "xUnit" installiert. Also kann das nicht das Problem sein, oder liege ich falsch? – Shamshiel

+1

Überprüfen Sie Ihre Build-Schritte und deaktivieren Sie sie, bis die Agentenanforderungen entfallen. Das ist der Schritt, der die Anforderung hinzufügt, es könnte ein anderer Unit-Test-Runner (oder ein anderes Plugin) sein. – bj0

+0

Dies löste unsere Probleme vollständig. Vielen Dank! –