我正面临一个问题,在我的maven项目中,nashorn JavaScript引擎无法工作。当我同时使用Java 8和Java 11时,以下代码可以在独立的Java文件中运行,
ScriptEngineManager scriptEngineManager = new ScriptEngineManager();
ScriptEngine engine = scriptEngineManager.getEngineByName("JavaScript");
if (engine == null)
System.out.println("The engine is null.");
但是当在我的maven项目中使用相同的代码时,它只适用于Java 11。当我在maven项目中使用Java 8时,engine
为空。我打印出了现有的引擎及其别名,然后我看到了nashorn和JavaScript别名。这以前是有效的,我不认为它是因为我的项目的变化而中断。我在maven项目中也没有对nashorn的依赖(因为它应该存在于Java 8中?)。有什么主意吗?
注意:我使用的是Java 1.8(或Java 8),当我使用Java 1.11(或Java 11)时,这个问题就消失了。
暂无答案!
目前还没有任何答案,快来回答吧!