Frage

Wie kann ich eine Grails WAR-Datei erstellen, so dass es nicht die Versionsnummer hat

(z. Foo-0.1.war)

bis zum Ende angebracht, wenn ich den ‚Grails Krieges‘ Befehl ausführen?

War es hilfreich?

Lösung

ich glaube, Sie den Krieg Namen im Krieg Befehl angeben können.

grails war foo.war

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

Andere Tipps

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

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

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

Dies ist nach dem neuesten Stand Grails Dokumentation .

Von der Grails Dokumentation , Kapitel 17, Deployment

  

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

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

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

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

Natürlich kann jedes Befehlszeilenargument   dass Sie bieten überschreibt diese   Einstellung.

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

Explizit stellt es auf der Kommandozeile: grails war foo.war

Stellen Sie die app.version Eigenschaft in application.properties leeren wird der Krieg verursachen namentlich genannt werden foo.war.

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

Grails 3.x wurde auf Gradle geschaltet und verwendet das Krieg Plugin . Sie können nur Namen wie dies in der build.gradle-Datei angeben:

war {
    archiveName 'foo.war'
}

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

Ich bin ein bisschen spät zur Party ... aber trotzdem:

Ich denke, der Grund für das Entfernen der Versionsnummer ist die Notwendigkeit zu beseitigen, den Krieg Datei umbenennen, damit es setzt auf „ richtig “ Kontextpfad / appName . Wenn das der Fall ist dann eine bessere Option ist einen versioniert Krieg Dateinamen zu verwenden, so dass Sie mehrere Versionen gleichzeitig auf Kater mit dem folgende Namensmuster in Grails-app / conf / BuildConfig.groovy bereitstellen können:

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

Wie in http: //tomcat.apache. org / tomcat-7.0-doc / config / context.html # Parallel_deployment

Diese Methode gilt für Kriege in der Regel nicht nur Grails' Kriege.

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