4

在 Java 的 Nashorn 引擎中,当你评估代码时,如果你这样做

var e = Packages.org.bukkit["event"]

e 将为空。

但是,我发现的一件事是,如果我这样做

var anothervar = Packages.org.bukkit.event
var e = Packages.org.bukkit["event"]

e(以及 anothervar)将是 org.bukkit.event 包。

为什么 Nashorn 有它,所以在我访问带有点符号的包后,它会开始使用括号符号?

4

1 回答 1

1

从我所看到的来看,这是一个Java 8 错误,所以与此同时,一个骇人听闻的解决方法可以用点符号来评估包

例如

eval("Packages.org.bukkit."+"event.server"); //or whatever variable it may be

编辑

该错误已被修复,因此它现在应该可以工作了。

于 2014-01-14T23:34:02.067 回答