Problembehandlung bei Team Foundation-Builds für Webprojekte
Aktualisiert: November 2007
Im folgenden Abschnitt werden allgemeine Problembehandlungsszenarien beschrieben, die möglicherweise bei der Erstellung von Webprojekten mit Team Foundation Build auftreten.
Webprojekte werden nicht erstellt
Die Buildkonfiguration muss auf ".NET" festgelegt sein, wenn nur Webprojekte erstellt werden sollen. Wenn eine Kombination aus Webprojekten und anderen verwalteten Projekten in Visual Studio erstellt werden soll, muss die Buildkonfiguration auf "Gemischte Plattformen" festgelegt werden.
Wenn Sie eine falsche Buildkonfiguration angegeben haben, wird die folgende Warnung in der Buildprotokolldatei aufgezeichnet:
Warning MSB4126: The specified solution configuration "Release|Any CPU" is invalid. Specify a valid solution configuration using the Configuration and Platform properties (e.g, MSBuild.exe Solution.sln /p:Configuration=Debug /p:Platform="Any CPU") or leave those properties blank to use the default solution configuration.
Lösung
Ändern Sie die Konfiguration durch die Builddefinition in "Gemischte Plattformen" oder ".NET". Sie haben auch die Möglichkeit, beim Erstellen einer neuen TFSBuild.proj-Datei im MSBuild-Projektdateierstellungs-Assistenten auf der Seite Zu erstellende Konfigurationen auswählen entweder ".NET" oder "Gemischte Plattformen" als Konfiguration auszuwählen. Weitere Informationen finden Sie unter Gewusst wie: Erstellen einer Builddefinition.
Verzeichnisstrukturkonflikte
Beim Erstellen eines Webprojekts in Visual Studio werden in der Standardeinstellung Projektmappen- und Websitedateien an zwei verschiedenen Speicherorten gespeichert. Projektmappendateien für das Webprojekt "SampleWS" werden beispielsweise im folgenden Pfad gespeichert:
- <Stamm>:\Dokumente und Einstellungen\Benutzer\Eigene Dateien\Visual Studio 2008\Projekte\SampleWS
Die Websitedateien werden im folgenden Pfad gespeichert:
- <root>:\Dokumente und Einstellungen\Benutzer\Eigene Dateien\Visual Studio 2008\Websites\SampleWS
Um den Speicherort für die Kompilierung festzustellen, enthält jede Projektmappendatei für Webprojekte eine PhysicalPath-Eigenschaft, die auf den Websiteordner verweist. Beim Einchecken einer Webprojektlösung in die Quellcodeverwaltung wird jedoch die Projektmappendatei im Stammordner gespeichert, die Website hingegen im nächsten Unterordner. Daher sind die PhysicalPath-Eigenschaften in der vom Quellcode verwalteten Projektmappendatei nicht funktionsfähig. Während des Builds synchronisiert Team Foundation Build die Webprojektdateien durch das Verwenden der Versionskontrollenordnerstruktur. Kompilierungsfehler ergeben sich, da sich die Verzeichnisstruktur in der Versionskontrolle von der Projektmappenordnerstruktur unterscheidet.
Wenn ein Konflikt der Verzeichnisstrukturen in der Projektmappendatei und in der Quellcodeverwaltung entsteht, wird in der Buildprotokolldatei der folgende Fehler aufgezeichnet:
ASPNETCOMPILER (0,0): Fehler 1003: Das Verzeichnis 'd:\<Buildverzeichnis>\MyTeamProject\SampleWS\WebSites\SampleWS\' ist nicht vorhanden.
Lösung
Erstellen Sie eine leere Projektmappe in Visual Studio, und erstellen Sie anschließend die Websites am gleichen Speicherort wie die Projektmappe.
Ändern Sie die Debug.AspNetCompiler.PhysicalPath-Eigenschaft und die Release.AspNetCompiler.PhysicalPath-Eigenschaft in der Projektmappendatei, sodass sie auf den vom Quellcode verwalteten Websiteordner verweisen.
Siehe auch
Weitere Ressourcen
Verwalten des Team Foundation Builds