Я разрабатываю скрипт оболочки Groovy, который часто запускается (выполняю довольно небольшие задачи), поэтому мне нужно быстрое время запуска JVM. Чтобы добиться этого, я пытаюсь запустить его с Nailgun .
Я установил Nailgun как пакет Ubuntu. Затем я исправил ошибку аргумента , связав /usr/bin/ng-server
с /usr/bin/ng
. Я запускаю Nailgun-Server так:
java -cp /usr/share/java/nailgun-0.7.1.jar -server com.martiansoftware.nailgun.NGServer
У меня есть этот простой фиктивный скрипт Groovy с именем hello.groovy, просто для тестирования nailgun-сервера:
#!/usr/bin/env groovy
def sayHello() {
println("Hello Groovy!");
}
sayHello();
Я скомпилировал файл с groovyc в hello.class.
Теперь я хочу запустить этот скрипт на сервере Nailgun. Мой наивный подход к этому был бы:
ng hello
ng hello.sayHello
Но все, что я получаю, это ClassNotFoundExceptions:
java.lang.ClassNotFoundException: hello
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at com.martiansoftware.nailgun.NGSession.run(Unknown Source)
Итак, как правильно запустить мой скрипт на Groovy с помощью сервера Nailgun? Я также был бы признателен за хорошие сайты / учебные пособия о том, как использовать Nailgun, очень сложно получить какую-либо информацию о том, как его использовать ...
EDIT:
Я также был бы признателен за полный пример (в том числе, как определенный класс вызывается с помощью ng) для использования nailgun с чистыми классами Java, так как я также не мог заставить ng работать с любым классом Java.