2012-04-04 11 views
1

Ich habe eine Lösung, die sechs Projekte enthält.Teamcity ignoriert Projektkontexte, die in Visual Studio 2010 konfiguriert wurden

Vier der Projekte sind Klassenbibliotheken und die anderen beiden sind eine WPF-Anwendung und ein Windows-Dienst. Die späteren zwei Projekte haben eine Projektkonfiguration namens "Test" - alle Klassenbibliotheken haben diese Konfiguration nicht, nur die Standardkonfigurationen "Debug" und "Release".

Ich habe eine Lösung Konfiguration namens "Test" hinzugefügt, und im Konfigurationsmanager habe ich die Einstellungen von Release kopiert, so dass alle Klassenbibliotheken in der Release-Konfiguration und dem WPF und Windows erstellt werden Dienste werden mit der Konfiguration "Test" erstellt.

Der Lösungsaufbau funktioniert in Visual Studio (2010) einwandfrei, wenn ich jedoch einen Visual Studio (sln) -Läufer in TeamCity 7 konfiguriere, ignoriert er diese Einstellungen und versucht, alle Projekte mit einer 'Test'-Konfiguration zu erstellen. und natürlich kann es diese Konfiguration für die Klassenbibliotheken nicht finden.

Gibt es eine Möglichkeit, TeamCity mitzuteilen, diese Projektkontexte zu verwenden, die in der Lösungsdatei gespeichert sind?

Ich möchte nicht zu jeder Klassenbibliothek eine unnötige Testkonfiguration hinzufügen müssen, die eine genaue Kopie der Release-Konfiguration sein wird.

+0

Welche Läufer verwenden Sie? –

+0

Wie ich schon sagte, der VS sln runner – devdigital

Antwort

1

Ich arbeite durch genau das gleiche Problem, leider sehe ich keine andere Option, aber in den zusätzlichen Konfigurationen hinzuzufügen. Wir verwenden tatsächlich die anderen Konfigurationen für unsere web.config-Substitution, eine nette Funktion von VS2010. Es scheint, dass es nicht möglich ist, mehrere Konfigurationen zu haben, wenn MSBuild ausgeführt wird. ich folgend in Teamcity:

C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Microsoft.Common.targets (483, 9): Die OutputPath Eigenschaft ist für das Projekt nicht gesetzt ' etwas.csproj '. Bitte stellen Sie sicher, dass Sie eine gültige Kombination der Konfiguration und Plattform für dieses Projekt angegeben haben. Konfiguration = 'SomeConfiguration' Platform = 'AnyCPU'. Sie können diese Nachricht sehen, weil Sie versuchen, ein Projekt ohne eine Lösungsdatei zu erstellen, und eine nicht standardmäßige Konfiguration oder Plattform angegeben, die für dieses Projekt nicht vorhanden ist.

Nur unsere Hauptwebsite hat die Konfiguration "SomeConfiguration", keines der konstituierenden Projekte in der Lösung hat diese Konfiguration.

Es wäre toll, eine andere Perspektive auf diese

0

TeamCity verwendet MSBuild.exe, um eine Lösung zu erstellen. Funktioniert dies, wenn MSBuild.exe foo.sln/p starten: Konfiguration = Release/t: Rebuild von Konsole?

Überprüfen Sie, dass auf der Registerkarte "Fertiggestellte Erstellungsparameter" kein system.Configuration-Parameter vorhanden ist.