MSBUILD-Fehler MSB4025 in TeamCity build-Schritt für Visual Studio
Wenn ich mein TeamCity build nur mit dem build-Schritt wird der Läufer Typ Visual Studio (sln), bekomme ich die folgende Fehlermeldung:
C:\TeamCity\buildAgent\work\4978ec6ee0ade5b4\Test\Code\Test.sln(2, 1): error MSB4025: The project file could not be loaded. Data at the root level is invalid. Line 2, position 1.
Dies ist auf einem dedizierten CI-server ausgeführt TeamCity Professional 8.1.1 (build 29939). Es gibt mehrere andere erfolgreich-laufen baut auf diesem server.
Den ungeraden bit ist, dass die gleiche build-Läufe erfolgreich auf TeamCity auf meine dev-Maschine. Ich folgte eine Antwort zu einer ähnlichen Frage, und kopiert den angegebenen Ordner auf, aber das hat nicht geholfen.
Ich bin mir sicher, dass das Projekt/Lösung die Datei ist nicht ungültig, weil zusätzlich zu bauen, die laufen auf meiner dev-box, ich öffnete die Projektmappe in Visual Studio gebaut und es gibt keine Probleme.
Irgendwelche Vorschläge?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich gerade behoben.
Blick in den Test.sln-Datei für Projekt-oder EndProject-tags, die nicht geschlossen wird. Für uns, die EndProject fehlte, und es brach auf teamcity, aber keine Probleme in Visual Studio.
Scheint es, die TeamCity Fehlermeldung wird auftreten, für eine beliebige Anzahl von Ursachen. In meinem Fall das problem ist aufgetreten, weil eine Linie im GlobalSection(NestedProjects) Abschnitt bezog sich auf eine Projekt-Guid, die nicht beziehen sich auf alle Projekte definiert, die in der Lösung Datei.
Als mit dem vorherigen post habe ich gar keine Probleme, Gebäude in Visual Studio. Ich habe nur eine hilfreiche Fehlermeldung, die mir erlaubt, zu entdecken, was das eigentliche problem war, als ich gebaut mit msbuild.
Sehen https://therightjoin.wordpress.com/2014/07/04/msb4025-the-project-file-could-not-be-loaded-data-at-the-root-level-is-invalid-error-when-building-ssdt-project-in-teamcity für ein weiteres Beispiel, und bei denen die Verwendung von msbuild geholfen, erkennen das wahre problem.
In unserem Fall war es ein Duplikat Projekt-Referenz im Projektmappen-Datei (verursacht durch in der Nähe von gleichzeitigen übertragungen und ein automatischer merge).
In meinem Fall, nach der Zusammenführung, in .sln-Datei, es war ein mismatch von Zeilen unter
Abschnitt. In klaren Worten, es wurden einige zusätzliche Zeilen Hinzugefügt, nach der Zusammenführung. Also, Wenn Sie zusammengeführt, bitte vergleichen Sie zwei Dateien mit der Lösung manuell. Sie können mit start-Gesamt-Zeile-Nummern in beiden Dateien.
In einem anderen Fall
Hatten wir eine leere Zeilen - so stellen Sie sicher, dass alle leeren Zeilen entfernt werden!
Hoffe das hilft einigen anderen auch!
Bekam ich die gleiche Fehlermeldung mit Jenkins. Es stellt sich heraus, das root-Jenkins-Ordner festgelegt wurde C:\Program Files (x86)\ und es nicht schreiben, Zugang zu bin und obj.
Fehler:
Fehler MSB4025: Die Projektdatei konnte nicht geladen werden. Daten auf der Stammebene sind ungültig.
Startete ich cmd als Administrator, und lief diese:
"C:\Program Files (x86)\MSBuild\14.0\Bin\MSBuild.exe" "C:\Program Files (x86)\Jenkins\workspace\BuildBI_1\Berichte\Test\ReportsTests.sln" /t:Build /p:RunOctoPack=true
Und das gab mir Hinweise über nicht in der Lage zum schreiben bin und obj.
In unserer situation das problem war die Angabe einer ToolsVersion, die nicht installiert auf dieser Maschine. (14 VS2015 hat aber VS2017 nicht standardmäßig)
Dieser arbeitete für mich-
Sie können installieren Build-Tools für Visual Studio 2017, stellen Sie sicher, wählen Sie C++ - tools, Windows-10-SDK und MSBuild und Ihrem set.