Ich hatte dies mit einer etwas ungewöhnlichen SLN / CSPROJ-Dateianordnung:
Ich hatte Projektdateien:
- A.csproj, mit den Konfigurationen "Dev" und "Production"
- B.csproj, mit den Konfigurationen "Dev" und "Production"
- C.csproj, eine "gemeinsame" Bibliothek, die sowohl von A als auch von B mit den Konfigurationen "Dev" und "Production" verwendet wird.
Und ich hatte SLN-Dateien:
- AC.sln, mit der Konfiguration "Produktion" - wird von Jenkins verwendet, um Projekt A und die gemeinsame Bibliothek zu erstellen
- BC.sln, mit der Konfiguration "Produktion" - wird von Jenkins verwendet, um Projekt B und die gemeinsame Bibliothek zu erstellen
- ABC.sln mit der Konfiguration "Dev" - wird von Entwicklern in VS verwendet, um neuen Code zu schreiben, ohne ständig andere Lösungen öffnen zu müssen (diese Antwort ist eine vereinfachte Ansicht einer Lösung mit 55 Projekten).
Ich hatte die allgemeine Bibliothek bearbeitet und eine Abhängigkeit von Projekt A eingeführt. AC.sln baute immer noch Jenkins ein, aber BC.sln gab einen Fehler mit den Worten:
Die OutputPath-Eigenschaft ist für das Projekt 'A.csproj' nicht festgelegt. Stellen Sie sicher, dass Sie für dieses Projekt eine gültige Kombination aus Konfiguration und Plattform angegeben haben. Configuration = 'Debug' Platform = 'AnyCPU'.
Es war anfangs rätselhaft, weil wir in keinem Projekt irgendwo eine Debug-Konfiguration haben. finde in Dateien für Debug|
aufgedeckte 0 Treffer
ABC.sln, das die menschlichen Entwickler in VS verwenden, würde ebenfalls gut funktionieren. Das Erstellen von BC.sln gab einen Fehler aus, dass A.dll nicht gefunden wurde
Als das kreisförmige unlösbare Problem von C in Abhängigkeit von A beseitigt war, fing alles wieder an zu arbeiten