Я установил все необходимые зависимости :
Код: Выделить всё
org.graalvm.js
js
21.1.0
org.graalvm.js
js-scriptengine
21.1.0
Код: Выделить всё
public static void main(String[] args) throws ScriptException {
try (Context context = Context.newBuilder("js")
.allowAllAccess(true)
.build()) {
// Evaluate JavaScript code
String jsCode = "console.log('Hello, GraalVM!');";
context.eval("js", jsCode);
} catch (Exception e) {
throw new ScriptException("Script execution failed: " + e.getMessage());
}
}
Исключение в потоке «основной» javax.script.ScriptException: Scriptне удалось выполнить: язык с идентификатором «js» не установлен. Установленные
языки: []. в org.example.Main.main(Main.java:23)
Я также пробовал что-то вроде этого:
< pre class="lang-java Prettyprint-override">
Код: Выделить всё
public static void main(String[] args) throws ScriptException {
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("JavaScript");
engine.eval("print('HI');");
}
Исключение в потоке «основной» java.lang.NullPointerException: Cannot
вызовите «javax.script.ScriptEngine.eval(String)», поскольку «engine» имеет значение
null в org.example.Main.main(Main.java:20)
Проблема в том, что ручная установка каких-либо компонентов по каким-то причинам невозможна. Мне просто нужно установить некоторые зависимости и заставить все работать. Что-то "нестандартное". Есть ли какое-либо решение этой проблемы? Может быть, есть какие-нибудь другие доступные движки?
Подробнее здесь: https://stackoverflow.com/questions/792 ... ithout-any
Мобильная версия