Javascript, встроенный в Java - Как я могу перейти к декларации? (Ctrl+B) (Нашорн) (IntelliJ)

В чистом Java или чистом JavaScript я могу использовать Ctrl+B, чтобы перейти к объявлению. Но когда я вызываю Java из файла JavaScript, IntelliJ не может разрешить мои ссылки на Java.

Эти 3 строки не выполняют никаких проблем, но я не могу нажать "Ctrl+B" на "out" или "println" части этих строк. Я хочу, чтобы Ctrl+B переходил к классу java.lang.System в моем редакторе, как это происходит, когда я делаю то же самое в файле Java.

// test.js
Java.type("java.lang.System").out.println("howdy");
Packages.java.lang.System.out.println("doody");
java.lang.System.out.println("mister");

Я использую следующую Java для вызова моего скрипта:

ScriptEngine engine = new ScriptEngineManager().getEngineByName("JavaScript");
FileReader myScript = new FileReader("test.js");
engine.eval(myScript);

И вывод:

howdy
doody
mister

Кто-нибудь знает, как заставить Ctrl+B (Перейти к декларации) работать с IntelliJ в этом контексте?

1 ответ

Решение

В стандартной комплектации IntelliJ IDEA не поддерживается разрешение ссылок между JavaScript и Java. Кто-то из сообщества работал над плагином, который поддерживал это, но, насколько я знаю, плагин не был выпущен.

Другие вопросы по тегам