MSBuild: Stellen Sie sicher, dass ein Ziel vor allen anderen Build-Schritten ausgeführt wird

8

Ich versuche, die Datei AssemblyInfo.cs so zu aktualisieren, dass die nächste Veröffentlichungsversion des Projekts angezeigt wird, BEVOR andere Build-Schritte ausgeführt werden.

in meiner Projektdatei, die ich vor dem Ende hinzugefügt habe:

%Vor%

PublishVersion.proj sieht folgendermaßen aus:

%Vor%

Nun führt es irgendwo vor dem Erstellen aus, aber definitiv nicht bevor es startet, denn wenn ich mir die generierte Exe anschaue, hat sie eine Dateiversion, die in AssemblyInfo.cs vor dem Build-Start war, aber die .application-Datei und die Manifest-Datei haben verschiedene Verweise auf die neue Version.

resultierende Manifestdatei (1.0.0.0 vor dem Buildstart, 1.0.0.4 nach dem Build):

%Vor%

Wie stelle ich sicher, dass mein Ziel vor ALLEN anderen ausgeführt wird?

Änderungen an PublishVersion.proj scheinen manchmal nicht wirksam zu sein und ich muss die Lösung säubern und Visual Studio neu starten, bevor ich etwas mache.

    
Lawrence Ward 09.11.2011, 15:53
quelle

1 Antwort

7

Vielleicht müssen Sie BeforeBuild als Ziel verwenden.

  

Wie stelle ich sicher, dass mein Ziel vor ALLES ausgeführt wird?   sonst?

Um Ihre Zielausführung zu überprüfen, können Sie MSBuild project build output verbosity in Diagnostic ändern. Finden Sie es unter den Tools & gt; Optionen & gt; Projekte und Lösungen & gt; Erstellen und Ausführen. Erstellen Sie dann das Projekt und suchen Sie Ihr Ziel im Ausgabefenster.

  

Änderungen an PublishVersion.proj scheinen manchmal nicht zu erfolgen   Effekt und ich muss die Lösung reinigen und Visual Studio neu starten   bevor es funktioniert.

AFAIK, das Visual Studio lädt die Zieldateien einmal, Sie müssen also Ihr Projekt neu laden, um das Ergebnis zu sehen.

Aktualisieren Ich kenne Ihr Versionsverwaltungssystem nicht, obwohl es nicht wichtig ist. Jedenfalls habe ich versucht, Ihnen ein einfaches Beispiel zu geben.

%Vor%

Die vorhergehende Aufgabe erzeugt eine Datei, die AssemblyVersion Metadaten oder alles, was Sie wollen, enthält.

Zuletzt müssen Sie Ihre Projektdatei wie folgt ändern:

%Vor% %Vor%     
Mehdi Golchin 09.11.2011, 16:03
quelle

Tags und Links