Сценарии Java с Nashorn (JSR 223) и прекомпиляция
Я использую Nashorn через JSR 223 для выполнения небольших фрагментов сценария, введенного пользователем:
public Invocable buildInvocable(String script) throws ScriptException {
ScriptEngine engine = new ScriptEngineManager().getEngineByName(ENGINE);
engine.eval(functions);
engine.eval(script);
return (Invocable) engine;
}
Различный пользовательский скрипт вызывает функции JavaScript, которые определены в статической центральной библиотеке (хранится вfunctions
Строка в фрагменте кода выше).
Каждый раз, когда я хочу заполучитьInvocable
что я могу позвонить с Java, мне постоянно приходится перекомпилировать код большой библиотеки.
Есть ли способ объединить ранее скомпилированный кусок кода с новым кодом?