Frage

Ich habe eine Lösung-Datei mit ASP.NET-Websites.

Wenn ich bauen die Lösung mit .NET 4.0 Beta 2 mit

  

"c: \ WINDOWS \ Microsoft.NET \ Framework \ v4.0.21006 \ MSBuild.exe" d: \ MyPath \ MySolution.sln

Alles funktioniert einwandfrei, keine Fehler. Dann versuche ich, die gleiche Lösung mit CruiseControl- .NET Aufgabe zu bauen (msbuild-Skript lief von einem Service), die gleiche Lösung schlägt mit:

  

D: \ MyPath \ MyWebSite.metaproj (,): errorMSB4025: Die Projektdatei konnte nicht geladen werden. . Datei konnte nicht gefunden 'D: \ MyPath \ MyWebSite.metaproj'

Natürlich gibt es keine Datei so. Ich denke, * .metaproj ist eine CSPROJ artige msbuild-Datei dynamisch für Webseiten erzeugt ...

Aber ich weiß nicht, wie der Fehler zu beheben ... Ich habe versucht metaproj-Dateien ohne Glück Google. Ich habe versucht, die Datei manuell zu machen, ich eingefügt a mit und die Zusammenstellung erhoben hat keine Fehler, aber ich denke, die Website nicht kompilieren.

Die gleiche Maschine .NET 3.5 und .NET 4.0-Projekte und die Umgebungsvariablen für beiden Frameworks hat.

War es hilfreich?

Lösung 4

Visual Studio 2010 endgültige Version dieser Fehler behoben.

Andere Tipps

Es gibt einen Weg, um dieses, wenn Sie von Projektabhängigkeiten in der Lösung Datei loswerden können. Sie können Projektabhängigkeiten in der Projektdatei halten, sondern sie aus der Lösung Datei entfernen. Siehe diesen Link für die dieser
Antwort .

Ich erhalte das gleiche Problem mit TFS 2008 Build-Server. Sobald ich die TFS Builder Serverkonfiguration geschaltet 4.0 msbuild verwenden begann ich das gleiche Problem bekommen. Wenn ich die msbuild manuell seine gut laufen und es sagt, in dem Protokoll seine eine metaproj Datei erstellen, aber in dem automatisierten Build-Prozess es fehlschlägt.

Russ

Ich lese CruiseControl- Diskussionen und versuchte gleiche Befehle auszuführen, wie CruiseControl.net tut und ich löste meinen Fall so, dass ich mein bewegte

Leerzeichen in Verzeichnisnamen macht msbuild unter Cruise Control zum Scheitern verurteilt !! ??

So gebe ich hiermit ausdrücklich Verzeichnisse für Tempomat ohne Leerzeichen ein. Beispiel unten.

<Project name="ProjectNameHere"> <workingDirectory>c:\dev\work\ProjectNameHere\WorkDir</workingDirectory> <artifactDirectory>c:\dev\work\ProjectNameHere\Artifacts</artifactDirectory> ...

Ich habe zunächst eine my_website.metaproj neben dem my_solution.sln, die wie folgt aussah:

<Project DefaultTargets="Test" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

  <Target Name="Build">
    <Message Text="Building...but nothing to build" />
  </Target>

  <Target Name="Test">
    <Message Text="Testing...but nothing to test." />
  </Target>

  <Target Name="Clean">
    <Message Text="Cleaning...but nothing to clean." />
  </Target>

</Project>

Dann klagte sie über nicht sgen.exe finden. Ich installierte Visual Studio 2010 Beta 2 auf dem Build-Agenten und es sieht aus wie es jetzt funktioniert.

[Bearbeiten] Das hat tatsächlich nicht vollständig funktionieren. Es zog nicht die Abhängigkeiten des Website-Projektes zu seinem ist.

tun kratzen das Upgrade Build-Prozess und Wiederholen von dem Build-Prozess mit einer Variation der Standard-Template

Was wir am Ende. Das hat gut funktioniert.

In VS2013 Umschalten von dem Default TfvcTemplate.12 arbeitete für mich!

Einige Informationen über die TfvcTemplate.12 hier http://blog.qetza.net/en/2013/10/03/new-features-in-team-build-2013/

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top