我已经下载了 JavaFX SDK,将其解压缩并设置了 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
原文由 Oksana Oryekhovska 发布,翻译遵循 CC BY-SA 4.0 许可协议
问题分 3 步解决。
在命令行中使用 %PATH_TO_FX% 而不是 $PATH_TO_FX 。
重新创建变量(系统和用户) PATH_TO_FX ,将其值括在引号中。由于目录 “C:\Program Files\Java\javafx-sdk-11.0.1\” 包含空格,导致错误“invalid flag”。
重新启动计算机以更新变量。