Java嵌入在 Java 中的脚本 - 如何转到声明? (Ctrl+B) (Nashorn) (IntelliJ)
Javascript embedded in Java - How can I go-to-declaration? (Ctrl+B) (Nashorn) (IntelliJ)
在纯 Java 或纯 Java 脚本中,我可以使用 Ctrl+B 跳转到声明。但是当我从 Java 脚本文件中调用 Java 时,IntelliJ 无法解析我的 Java 引用。
这3行执行没问题,但我无法在这些行的"out"或"println"部分按"Ctrl+B"。我希望 Ctrl+B 在我的编辑器中跳转到 java.lang.System class,就像我在 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 一起工作吗?
开箱即用,IntelliJ IDEA 不支持解析 JavaScript 和 Java 之间的引用。社区中有人 working on a plugin 支持这一点,但据我所知该插件尚未发布。
在纯 Java 或纯 Java 脚本中,我可以使用 Ctrl+B 跳转到声明。但是当我从 Java 脚本文件中调用 Java 时,IntelliJ 无法解析我的 Java 引用。
这3行执行没问题,但我无法在这些行的"out"或"println"部分按"Ctrl+B"。我希望 Ctrl+B 在我的编辑器中跳转到 java.lang.System class,就像我在 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 一起工作吗?
开箱即用,IntelliJ IDEA 不支持解析 JavaScript 和 Java 之间的引用。社区中有人 working on a plugin 支持这一点,但据我所知该插件尚未发布。