Beh, sembra un compito semplice ma non sono riuscito a farlo funzionare.Come eseguire un Groovy Script dalla mia app Grails?
Ho uno script Groovy che funziona bene con Windows Vista quando si chiama messaggio:
> cd MY_GAILS_PROJECT_DIR
> groovy cp src/groovy scripts/myscript.groovy
Ora, voglio eseguire questo script (e passando ad esso alcuni argomenti di input) attraverso il mio il mio Maintenance Service Class (chiamato da un controller) come sotto,
class MaintenanceService {
def executeMyScript() {
"groovy cp src/groovy scripts/myscript.groovy".execute()
}
}
Non funziona affatto! Non ho nemmeno riescono ad avere il metodo execute() riconoscere qualsiasi comando (come "cd .".execute()
) eccezione lancio:
Error 500: java.io.IOException: Cannot run program "cd": CreateProcess error=2, The system cannot find the file specified
1- Come posso eseguire uno script Groovy dalla mia applicazione graal?
2- Quali sono le migliori pratiche qui? Ad esempio, dovrei usare QuartzPlugin e poi il metodo triggerNow per l'esecuzione di uno script? dovrei usare un compito di Gant? Se sì, come si fa?
Grazie.
C'è una ragione specifica che deve essere uno "script" groovy, piuttosto che una classe che puoi chiamare, come suggerito da bastianneu qui sotto? – Ash
Sì. Ho bisogno che questo script groovy venga eseguito anche senza l'ambiente Grails. – fabien7474