尽管审查How to run ControlsFX sample application using Java 11 and JavaFX 11和 How to run ControlsFX Java 11 and JavaFX 11以及网上的其他建议,我仍然无法让 ControlsFX 示例应用程序在 Java 11 (OpenJDK 11.0.1) 中运行。这是我的命令行:
java --module-path ~/Downloads/javafx-sdk-11.0.1/lib --add-modules=javafx.controls,javafx.fxml,javafx.web --add-exports javafx.base/com.sun.javafx.event=ALL-UNNAMED -jar controlsfx-samples-9.0.1-SNAPSHOT.jar
和输出:
Error: Could not find or load main class org.controlsfx.fxsampler.fxsampler.FXSampler
Caused by: java.lang.ClassNotFoundException: org.controlsfx.fxsampler.fxsampler.FXSampler
如有任何帮助,我们将不胜感激。
最佳答案
我无法访问controlsfx-samples-9.0.1-Snapshot。我得到了 9.0.0 版本,我尝试了一下,它有点工作。不要使用 ALL-UNNAMED。对我来说,使用 ALL-UNNAMED 会导致程序无法运行。您想要导出到的类应该是controlsfx。抱歉,命令行代码很长,因为您需要为几乎所有内容添加导出。
您可以从 http://fxexperience.com/controlsfx/ 下载采样器 9.0.0 .
java --module-path ".:/home/frostilia/JavaLib/javafx-sdk-11.0.1/lib/" --add-modules ALL-MODULE-PATH --add-exports javafx.base/com.sun.javafx.runtime=controlsfx --add-exports=javafx.base/com.sun.javafx.event=controlsfx --add-exports=javafx.controls/com.sun.javafx.scene.control=controlsfx --add-exports=javafx.base/com.sun.javafx.collections=controlsfx --add-exports=javafx.graphics/com.sun.javafx.css=controlsfx --add-exports=javafx.graphics/com.sun.javafx.scene.traversal=controlsfx --add-exports=javafx.graphics/com.sun.javafx.scene=controlsfx --add-exports=javafx.controls/com.sun.javafx.scene.control.behavior=controlsfx --add-exports=javafx.controls/com.sun.javafx.scene.control.inputmap=controlsfx --add-opens=javafx.base/com.sun.javafx.event=controlsfx --add-opens=javafx.controls/javafx.scene.control.skin=controlsfx --add-opens=javafx.graphics/javafx.scene=controlsfx -jar controlsfx-samples-9.0.0.jar
关于java - ControlsFX 和 Java 11 无法运行采样器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53789266/