【发布时间】:2019-06-01 00:12:38
【问题描述】:
我已经下载了 JavaFX SDK,解压它并在this instructions 之后设置了一个PATH_TO_FX 系统变量。我使用了以下代码示例:
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class HelloFX extends Application {
@Override
public void start(Stage stage) {
String javaVersion = System.getProperty("java.version");
String javafxVersion = System.getProperty("javafx.version");
Label l = new Label("Hello, JavaFX " + javafxVersion + ", running on Java " + javaVersion + ".");
Scene scene = new Scene(new StackPane(l), 640, 480);
stage.setScene(scene);
stage.show();
}
public static void main(String[] args) {
launch();
}
}
尝试使用建议的模式编译它:
javac --module-path $PATH_TO_FX --add-modules javafx.controls HelloFX.java
但是编译器抛出错误:找不到模块:javafx.controls。 Windows 10。Java 和 JavaFX 版本为 11.0.1
再次:我确实添加了 --add-modules javafx.controls
行【问题讨论】:
-
下载和解压 JavaFX 文件 (gluonhq.com/products/javafx) 对我有用。我有以下虚拟机选项:
--add-exports=javafx.base/com.sun.javafx.reflect=ALL-UNNAMED --add-exports=javafx.graphics/com.sun.javafx.util=ALL-UNNAMED --module-path /opt/javafx-sdk-11.0.2/lib/ --add-modules=javafx.controls,javafx.media,javafx.fxml
标签: java