2015-09-22 2 views
0

Попытка получить следующий скрипт:Как запустить скрипт Groovy с помощью команды java?

class MyClass { 
    static void main(String... args) { 
    println "Hello ${args[0]}" 
    } 
} 

Чтобы запустить как Java с: java MyTest John, например.

Чтение the groovy docs on scripts with main Я был под впечатлением, я мог бы на следующее для достижения своей цели:

  1. Run groovyc MyTest.groovy
  2. Run java MyTest John

Я даже был под впечатлением, что я мог бы оставить просто тело основной функции и все еще можно скомпилировать до класса, который простирается от Script ...

я могу запустить скрипт с groovy MyTest.groovy John и (после компиляции с groovyc) groovy MyTest John

Как я могу достичь своей цели? Что я делаю не так?

ответ

1

Вам нужно заводной на пути к классам при выполнении java команды, то есть:

Сохранить как MyClass.groovy

class MyClass { 
    static main(args) { 
    println "Hello ${args[0]}" 
    } 
} 

Затем запустите:

groovyc MyClass.groovy 

Затем запустите:

java -cp $GROOVY_HOME/embeddable/groovy-all-2.4.4.jar:. MyClass John 
+0

Сумасшедший, как устаревшие учебники 1 года уже устарели. Большинство из них указывают на '-cp $ GROOVY_HOME/lib' или вообще не указывают на что-либо. – sargas

+0

Вы можете получить отдельные банки из 'lib', но я склонен указывать на« все », так как мне не нужно думать, какие банки мне могут понадобиться ;-) –

Смежные вопросы