graal supporta la creazione di guerra. Ma esiste un comando per creare un orecchio attraverso i graal?crea l'orecchio nei graal
7
A
risposta
9
Non c'è un supporto diretto in Grails, ma questo script Gant farà il suo lavoro. Semplicemente aggiunto alla scripts/
dir e invocato come grails ear
.
script originariamente pubblicato da Graeme on mailing list
includeTargets << grailsScript("_GrailsWar")
target(ear: "Creates an EAR file from a Grails WAR") {
war()
event("StatusUpdate", ["Building EAR file"])
generateApplicationXml()
def warDest = new File(warName).parentFile
def earFile = "${projectTargetDir}/${contextRoot}.ear"
ant.ear(destfile:earFile, appxml:appXml, update:true) {
fileset(dir:warDest, includes:"*.war")
}
event("StatusFinal", ["Done creating EAR $earFile"])
}
target(defineContextRoot:"defines the context root") {
contextRoot = "${grailsAppName}${grailsAppVersion ? '-'+grailsAppVersion : ''}"
}
target(generateApplicationXml:"Generates an application.xml file") {
depends(defineContextRoot)
def warDest = new File(warName)
appXml = "${projectTargetDir}/application.xml"
new File(appXml).write """\
<?xml version="1.0" encoding="UTF-8"?>
<application
xmlns=http://java.sun.com/xml/ns/j2ee
xmlns:xsi="http://www.w3.org/ 2001/XMLSchema-instance"
xsi:schemaLocation="http:// java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/ application_1_4.xsd"
version="1.4">
<display-name>${grailsAppName}</display-name>
<module>
<web>
<web-uri>${warDest.name}</web-uri>
<context-root>${contextRoot}</context-root>
</web>
</module>
</application>
"""
}
setDefaultTarget(ear)
2
Questa è una risposta molto tardi, ma al giorno d'oggi il plugin Grails Maven è piuttosto buona. Quindi potresti solo costruire un orecchio dalla guerra prodotta dal plugin Maven dei graal.
Problemi correlati
- 1. Ricerca non sensibile alle maiuscole nei graal
- 2. Memorizzazione nella cache dei dati nei graal
- 3. @ExpectedException nei test delle unità di graal
- 4. Deserializzare il tempo joda dalla stringa nei graal?
- 5. graal mockFor chiusura wierdness
- 6. Esiste un metodo standard per il tracciamento del controllo nei graal?
- 7. Un buon modo per introdurre una stringa costante nel file di internazionalizzazione i18n nei graal
- 8. graal hasOne vs variabile membro diretto
- 9. Come velocizzare l'esecuzione del test dei graal
- 10. Passo Javascript variabile in graal RemoteFunction
- 11. Come si consuma un'API in un'applicazione graal
- 12. Passaggio Jenkins crea i parametri nei nodi della pipeline
- 13. L'aggiunta di plug-in-place per graal 3 progetto
- 14. Cast di ereditarietà delle classi di domini Graal/Groovy
- 15. Devo conoscere Groovy prima di imparare i graal?
- 16. Come ignorare la configurazione graal da linea di comando
- 17. Come fare Raggruppamento nella graal per ordinare dal conte (*)
- 18. come registrare un JSON marshaller personalizzato in graal
- 19. Eccezione generata dopo la personalizzazione ehcache.xml in applicazione graal
- 20. Usando getter e setter in graal o no?
- 21. Mostra i risultati del test dei graal in Netbeans IDE
- 22. Integrazione dei graal in un'applicazione a molla esistente?
- 23. IntelliJ IDEA 14 errori con graal run-app
- 24. Il ponteggio dei graal è in qualche modo transazionale?
- 25. Grails - salva l'istanza transitoria prima di svuotare i graal Errore?
- 26. Get nome del pulsante di invio cliccato in graal
- 27. Cambio del database non necessario Correlato al booleano dopo il graal 2.4.3 aggiornamento
- 28. "Crea servizio app" Dialogo non recuperando informazioni, pulsante Crea disabilitato
- 29. Crea set di query vuota di default nei campi modulo Django
- 30. Overriding Devise Registration Crea metodo
Qualsiasi motivo per cui questo non fa parte del framework Grails? – kaskelotti
Forse questo script ha funzionato per le versioni precedenti di Grails, ma per '2.3.4' ho ricevuto un errore che indicava che la proprietà warName non esiste. Risolto definendolo all'interno dello script come 'warName =" $ {basedir}/target/$ {grailsAppName} - $ {grailsAppVersion} .war "'. Ho controllato dalle fonti e sembra che la proprietà warName sia presente in WarCreator.groovy (e forse anche nello script _GrailsWar), ma non è visibile allo script Ear per qualche motivo. – kaskelotti
ma i grails ear generano per l'ambiente di sviluppo, ho bisogno di creare per l'ambiente di produzione – sirdaiz