Vous pouvez écrire un script Groovy externe qui effectue toutes les importations, crée un objet GroovyConsole et appelle la méthode run() sur cet objet.
Voir aussi http://groovy.codehaus.org/Groovy+Console#GroovyConsole-EmbeddingtheConsole
Par exemple: start.groovy
import groovy.ui.Console;
import com.botkop.service.*
import com.botkop.service.groovy.*
def env = System.getenv()
def service = new ServiceWrapper(
userName:env.userName,
password:env.password,
host:env.host,
port:new Integer(env.port))
service.connect()
Console console = new Console()
console.setVariable("service", service)
console.run()
A partir d'un script shell appeler l'exécutable groovy lui fournissant le script groovy:
#!/bin/bash
if [ $# -ne 4 ]
then
echo "usage: $0 userName password host port"
exit 10
fi
export userName=$1
export password=$2
export host=$3
export port=$4
export PATH=~/apps/groovy/bin:/usr/bin:$PATH
export CLASSPATH=$(find lib -name '*.jar' | tr '\n' ':')
groovy start.groovy
Le code GroovyConsole peut désormais utiliser les imports effectués dans start.groovy, ainsi que les variables créées et passées avec la méthode setVariable ('service' dans l'examp le).