Нет, нет.Но вы можете создать исключение, скажем, скажем, ExitError
:
public class ExitError extends Error {
private final int code;
public ExitError(int code) {
this.code = code;
}
public int getCode() {
return code;
}
}
Теперь в приложении, выполняющем скрипт, вы можете сделать следующее:
public int runScript() {
try {
// Invoke script via Rhino
} catch (ExitError exc) {
return exc.getCode();
}
}
И в командестрочная версия:
public static void main(String[] args) {
try {
// Invoke script via Rhino
} catch (ExitError exc) {
System.exit(exc.getCode());
}
}
Кроме того, в своем коде JS напишите функцию-обертку:
function exit(code) {
throw new ExitError(code);
}