【问题标题】:Java 11 + netscape JSObjectJava 11 + 网景 JSObject
【发布时间】:2020-05-07 07:56:41
【问题描述】:

我有一个旧项目正在从 Java 8 迁移到 Java 11。

在编译项目时,我使用这些 VM 选项:

--module-path /path/to/javafx-sdk-11.0.2/lib --add-modules=javafx.controls,javafx.fxml,javafx.swing,javafx.graphics,javafx.media,javafx.web --add-reads javafx.graphics=ALL-UNNAMED --add-opens javafx.controls/com.sun.javafx.charts=ALL-UNNAMED --add-opens javafx.graphics/com.sun.javafx.iio=ALL-UNNAMED --add-opens javafx.graphics/com.sun.javafx.iio.common=ALL-UNNAMED --add-opens javafx.graphics/com.sun.javafx.css=ALL-UNNAMED --add-opens javafx.base/com.sun.javafx.runtime=ALL-UNNAMED

我不知道为什么,但是在 Intellij 中启动项目时会引发以下错误:

错误:(4, 27) java: 包 netscape.javascript 不存在

错误:(68, 19) java: 找不到符号 symbol: class JSObject

但据我所知,JSObject 在 Java11 中仍然可用,对吧? https://docs.oracle.com/en/java/javase/11/docs/api/jdk.jsobject/netscape/javascript/JSObject.html 我看到一种已弃用的方法,但该类仍然可用。

可能是什么问题?

【问题讨论】:

标签: java intellij-idea java-11 jsobject


【解决方案1】:

我有类似的问题,我不得不添加这个:

--add-modules jdk.jsobject --add-exports=javafx.web/com.sun.javafx.webkit=ALL-UNNAMED

不确定是否需要 --add-exports 部分,但可能第一部分很重要,因为 jdk.jsobject 模块包含 netscape.javascript.JSObject 类。

希望能有所帮助...

【讨论】:

    猜你喜欢
    • 2011-04-07
    • 1970-01-01
    • 1970-01-01
    • 2011-06-01
    • 1970-01-01
    • 2020-02-07
    • 1970-01-01
    • 2012-07-06
    • 2014-07-13
    相关资源
    最近更新 更多