我有一个从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:找不到符号符号:类JSObject
但据我所知,JSObject在Java11中仍然可用,对吗?https://docs.oracle.com/en/java/javase/11/docs/api/jdk.jsobject/netscape/javascript/JSObject.html --我看到了一个不推荐的方法,但该类仍然可用。
有什么问题吗?
发布于 2020-08-20 23:53:18
我也遇到了类似的问题,我不得不补充一下:
--add-modules jdk.jsobject --add-exports=javafx.web/com.sun.javafx.webkit=ALL-UNNAMED不确定是否需要添加导出部分,但可能第一部分很重要,因为jdk.jsobject模块包含netscape.javascript.JSObject类。
希望这有点帮助..。
https://stackoverflow.com/questions/61652644
复制相似问题