Ошибка при выполнении файла javascrit через nashorn jjs

Я могу выполнить JJS на Bash

$ jjs
jjs> 

но я не могу выполнить скрипт

$ ./executable.js
/usr/bin/env: jjs -scripting: No such file or directory

executable.js

#!/usr/bin/env jjs -scripting
print(
"Arguments (${$ARG.length})");
for each (arg in $ARG) {
  print("- ${arg}")
}

Как я могу избежать этой ошибки?

1 ответ

Нашорн требует определенного синтаксиса, измените ваш скрипт на (проверьте шебанг!):

#!/usr/bin/jjs -fv

print("Arguments: " + $ARG);
print($ARG);     // arg1, arg2
print($ARG[0]);  // arg1

И при выполнении вы можете использовать:

jjs -scripting asdf.js -- arg1 arg2

Распечатает:

Arguments: arg1,arg2
arg1,arg2
arg1
Другие вопросы по тегам