Я пытаюсь использовать Nashorn как язык сценариев, и я хотел бы запустить программу Java из сценария, который запускается с Nashorn.
Я могу без проблем запустить следующий скрипт с Nashorn:
#!/usr/bin/jjs -fv
$EXEC("ls -l")
Однако следующий скрипт, кажется, ничего не делает:
#!/usr/bin/jjs -fv
$EXEC("java -version")
На командной строке java -version
конечно, работает...
Что может быть моей проблемой?
Nashorn может вызывать методы из классов Java. Поэтому вы можете просто использовать его, чтобы вызвать main
-method основного класса программы, которую вы хотите запустить. Предварительным условием является то, что вы запускаете jjs с параметром -cp path/to/java/classes/of/program
чтобы он знал о классах указанной программы.