Frage

Wir pflegen eine mittlere Anwendung großen Fenstern entwickelt in vb / c # .net in Arbeit. Noch jetzt die Build- und Deploy-Prozess für diese App Handbuch ist. Ich bin entschlossen, diesen Prozess zu machen MSBuild automatisiert verwenden, auf dem ich jetzt noch keine Kenntnis haben.

Unsere Anwendung hat eine einfache Build-Struktur, von Projekten gesetzt werden bereits in vier Lösungen gruppieren (SLN) und muß nur die vier SLN in einer Reihenfolge zu bauen. Und dann veröffentlicht ein Projekt (der Teil des letzten sln ist gebaut werden) in ein Verzeichnis. Das ist es. Ein einfaches Verfahren, das bereits 30 Minuten manueller Build zeitraubend, und ich bin mir ziemlich sicher, dass dies ohne manuelle Eingriffe durchgeführt werden kann in atleast 1/4 th der Zeit mit msbuild.

Alle meine Ziele gut, ich begann um Web-Suche MSBuild Ressourcen meinen Prozess zu erreichen, aber um mich herum viele Dinge verwirrt suchen werden. Sie benötigen einen Zeiger oder eine gute Erklärung, wie und beginnen, wo für mein einfaches Szenario zu starten. Hilfe wird sehr geschätzt.

War es hilfreich?

Lösung

Das klingt nach einem sehr einfachen Skript zu schreiben. Selbst eine Batch-Datei tun würde:

msbuild \path\to\first.sln /p:Configuration=Release
msbuild \path\to\second.sln /p:Configuration=Release
msbuild \path\to\third.sln /p:Configuration=Release
msbuild \path\to\fourth.sln /p:Configuration=Release
call deploy

Natürlich viel besser wäre es, einen Server laufen zu haben, sagen CruiseControl.NET , die eine Web-Schnittstelle in den Build-Status und Geschichte gibt.

In MS bauen, gibt es zwei Hauptkontrollpunkte für den Anrufer: Das Ziel und seine Eigenschaften. Das Ziel ist es, was zu kompilieren, Ressourcen, Erstellung, Bereitstellung, etc. Die Eigenschaften steuern, wie das Ziel gebaut wird.

Sie können die Konfiguration steuern die Konfiguration Eigenschaft (siehe oben) verwendet wird. Wenn Sie Ihren * öffnen. * Proj Dateien, werden Sie PropertyGroup Elemente bemerken. Dies sind einstellbar über die Kommandozeile mit der /p arg.

Hier sind die Angaben für die beiden argumente:

/target:<targets>  Build these targets in this project. Use a semicolon or a
                 comma to separate multiple targets, or specify each
                 target separately. (Short form: /t)
                 Example:
                   /target:Resources;Compile

/property:<n>=<v>  Set or override these project-level properties. <n> is
                 the property name, and <v> is the property value. Use a
                 semicolon or a comma to separate multiple properties, or
                 specify each property separately. (Short form: /p)
                 Example:
                   /property:WarningLevel=2;OutDir=bin\Debug\

Andere Tipps

Hier ist eine gute Anleitung , die eine Menge von Informationen über große MSBuild, Continuous Integration und CuriseControl.NET hat. Auf jeden Fall ein guter Anfang.

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