2015-11-10 10 views
8

In Grails 2 potremmo definire il nome del file WAR in questo modo:Creare Grails 3 guerra senza numero di versione

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

Come posso ignorare il nome del file guerra in Grails 3?

Grazie Jeff. Linea

ho aggiunto come thisin build.gradle:

war { 
    archiveName "${war.baseName}.war" 
    } 

risposta

10

In build.gradle si può fare qualcosa di simile war.archiveName='jeff.war'. Vedi https://docs.gradle.org/current/dsl/org.gradle.api.tasks.bundling.War.html#org.gradle.api.tasks.bundling.War%3aarchiveName.

+1

Il valore di corso può essere dinamico: 'war.archiveName =" $ {war.baseName} .war "anche. –

+0

Vale la pena notare che l'impostazione di questa proprietà deve essere eseguita ** DOPO ** il plugin war viene applicato – GeoGriffin

+0

corretto. Non è possibile accedere a nulla fornito da un plug-in fino a quando il plug-in non è stato applicato. –

0

Una risposta più dettagliata: aggiungere questo all'attività wrapper in build.gradle in modo da creare un nome file war diverso in base a ciascun ambiente.

war.archiveName="${war.baseName}_${grails.util.Environment.current.name}.war" 

Quindi creare un file di guerra come questo.

grails -Dgrails.env=staging war 
+1

"Aggiungi questo all'attività wrapper in build.gradle ..." - Cosa deve fare l'attività wrapper con questo? –