2016-08-01 18 views
13

I recenlty zaktualizował mój TeamCity do najnowszej wersji. (10.0 build 42002)TeamCity - Niezaspokojone wymagania (DotNetFramework4.0_x86)

Od tego czasu agent kompilacji nie może budować żadnego z moich projektów.

Agent mówi mi, co następuje:

Unmet requirements: DotNetFramework4.0_x86 exists 

Aby rozwiązać ten problem, ja już zrobiłem to, co zasugerowano w tej kwestii stackoverflow: TeamCity Agent Missing DotNetFramework4.0_x86, but not?

Niestety to nie działa. Spojrzałem więc na logi, ale nie znalazłem nic dziwnego. Następnie przejrzałem paramety konfiguracji agenta. Znalazłem to:

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 

Jak widać .NET Framework 4.0 jest odwzorowywany DotNetFramework4.6. Dla mnie to wydaje się być problemem.

Czy ktoś ma pomysł, co mogę zrobić, aby to naprawić?

Odpowiedz

19

Użyłem pracy z Greg B znaleziony here, aby rozwiązać problem.

Aby ponownie uruchomić agenta, należy wprowadzić następujące wiersze do konfiguracji agenta. (Na przykład znajduje się tutaj: C: \ TeamCity \ \ conf \ buildAgent 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. zatrzymałem agenta w usługach Windows
  2. I wklejony parametry w buildAgent.properties
  3. zacząłem agenta w usługach Windows

o ile mi zrozumieć JetBrains naprawiono błąd w TeamCity i dlatego .NET Frameworks nie będzie można znaleźć więcej.

Cytat Evgeniy Koshkin

... w przypadku, gdy narzędzie kierowania .NET 4.0 jako wymagane wykonywania ty faktycznie powinny unikać instalowania .NET 4.5 (6) na swoich agentów kompilacji. w tym przypadku TeamCity zgłosi, że środowisko wykonawcze .net 4.0 jest dostępne. Ale Nie sądzę, że to ograniczenie zainstalowanej wersji .net sprawia, że ​​w większości przypadków jest to . Przed naprawieniem tego błędu TeamCity zgłasza fakt, że ".NET 4.0 był wcześniej środowiskiem uruchomieniowym tego agenta", ponieważ ".NET 4.0 jest środowiskiem wykonawczym tego agenta". To jest błędne zachowanie z mojego punktu widzenia.

+0

2 dni, aby to zrozumieć. Dziękuję Ci. :) – bmavity

+0

Gdybym mógł dać więcej punktów, zrobiłbym to – Ian1971

1

.NETFramework 4,0 i 4,6 są przy użyciu tego samego katalogu

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 

Istnieją dwa possibles rozwiązania tego problemu:

+0

Mam zainstalowane .NET Framework 4.0 i .NET Framework 4.6. Po "naprawieniu wymogu agenta" masz na myśli przejście do Ustawień projektu/wymagań agenta? Widziałem to rozwiązanie w innej odpowiedzi na pytanie o stackoverflow, ale nie mogę zmienić tam wymagań. Istnieje tylko opcja dodawania nowych wymagań. – Shamshiel

+0

Właśnie zaktualizowałem do wersji 10 i otrzymuję ten problem. Nie mam zainstalowanego programu DotNet 4.0, ale mój projekt jest zbudowany z 4.5 i zbudowany poprawnie na v9.x. Wygląda na to, że wymaganie dotnet4.0 jest automatycznie dodawane przez krok budowania MSBuild (nie mam wybranego 4.0) i nie mogę wymyślić, jak go usunąć. – bj0

+0

W rzeczywistości wygląda na to, że tester XUnit dodaje wymaganie, mimo że mam wybrane 4.5. – bj0

7

OK, wygląda na to, że był to błąd z wtyczką testową xUnit. To mówił o sprawie wydania tracker TC: https://youtrack.jetbrains.com/issue/TW-46352

Autor plugin został już poprawiony, należy uaktualnić do v 1.1.2: https://github.com/carlpett/xUnit-TeamCity/releases/tag/1.1.2

Można uaktualnić poprzez zainstalowanie pliku .zip według: https://confluence.jetbrains.com/display/TCD10/Installing+Additional+Plugins

+0

Dziękuję za odpowiedź, ale nie mam zainstalowanej wtyczki "xUnit". Więc to nie może być problem, czy ja się mylę? – Shamshiel

+1

Sprawdź kroki kompilacji i wyłącz je, dopóki nie zniknie wymaganie agenta. Jest to krok dodający wymaganie, może to być inny biegacz testu jednostkowego (lub inna wtyczka). – bj0

+0

Rozwiązało to całkowicie nasze problemy. Dzięki! –