2008-10-02 10 views

Antwort

33

Ich denke, Sie können den Kriegsnamen im Krieg Befehl angeben.

grails war foo.war 

Überprüfen Sie auch die neueste Grails-Dokumentation, wo diese Einstellung vornehmen, als Konfigurationsoption. Siehe die anderen Antworten für Details.

+3

Nebenbei bemerkt: Wenn ja, wird die WAR-Datei standardmäßig nicht zu tun mit dem 'target' Verzeichnis zusammengestellt werden, wie man erwarten könnte, sondern in Ihrem Projektverzeichnis. Sie können jedoch auch den Pfad angeben, siehe http://grails.org/doc/2.2.1/ref/Command%20Line/war.html – peterp

+0

Dies funktioniert nicht in Grails 3.3.2 –

9

Vom Grails Documentation, Kapitel 17, Deployment

Es gibt auch viele Möglichkeiten, in denen Sie die WAR-Datei anpassen können, die erstellt wird. Zum Beispiel können Sie ein Pfad (entweder absolut oder relativ) auf den Befehl geben, dass es in die anweist, die Datei zu platzieren und welche Namen geben:

grails war /opt/java/tomcat-5.5.24/foobar.war 

Alternativ können Sie eine Zeile hinzufügen zu Config.groovy, die den Standard Speicherort und Dateinamen ändern:

grails.war.destFile = "foobar-prod.war" 

natürlich Argument jeder Befehlszeile , dass Sie überschreibt diesen bietet Einstellung.

+2

Dies ist eigentlich die bessere Antwort –

0

Eine andere Möglichkeit, den Krieg Dateien ohne Versionsnummer zu erzeugen, ist die Eigenschaft zu halten, app.version, leer in den application.properties

+0

Dies funktioniert und ist die beste Antwort, weil es die primäre Quelle für diese Informationen ist. – Tobia

5

die anderen ausgezeichneten Antworten Aufrollen. Es gibt mehrere Möglichkeiten:

Explizit es in der Befehlszeile ein: grails war foo.war

Stellen Sie die app.version Eigenschaft in application.properties leeren den Krieg führen zu foo.war genannt werden.

gesetzt Explizit den Namen des Krieges mit der grails.war.destFile Eigenschaft in Config.groovy

40

Falls jemand auf diesen Artikel kommt und wird mit Grails 1.3.x, die Konfigurationsoption von grails.war.destFile in Config.groovy zu sein grails.project.war.file geändert hat in BuildConfig.groovy.

Auch ist der Dateiname auf den Projektarbeitsbereich relativ, so sollte es einen Wert wie hat: auf die neuesten Grails documentation

grails.project.war.file = "target/${appName}.war"

Dies ist nach.

+1

dies ist auch relevant für Grails 2.x – winna

2

Grails 3.x hat auf Großbuchstaben umgeschaltet und verwendet das war Plugin. Sie können nur Namen wie dies in der build.gradle-Datei angeben:

war { 
    archiveName 'foo.war' 
} 
+1

Für Grails 3 müssen Sie 'Archivname' anstelle von 'Archiv' verwenden. https://stackoverflow.com/questions/33621966/create-grails-3-war-witout-version-number – Zan

+0

guten Fang. Ich habe den Beispielcode aktualisiert. – j4y

Verwandte Themen