我下载了:
- OpenJDK 11.0.2
- JavaFX SDK 11.0.2
两个文件都被提取到路径C:/Program Files/Java/
中
操作系统:Windows 10
IDE: NetBeans 10.0
路径:
JAVA_HOME = C:/Program Files/Java/jdk-11.0.2
PATH_TO_FX = C:/Program Files/Java/javafx-sdk-11.0.2/lib
在环境变量的Inside Path中添加%JAVA_HOME%/bin
在NetBeans中,我创建了一个名为JFXDev的Java应用程序项目,其中包含一个com包。在com包内有一个主类,其代码如下:
package com;
import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class Main extends Application {
@Override
public void start(Stage primaryStage) {
Button btn = new Button();
btn.setText("Say 'Hello World'");
btn.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
System.out.println("Hello World!");
}
});
StackPane root = new StackPane();
root.getChildren().add(btn);
Scene scene = new Scene(root, 300, 250);
primaryStage.setTitle("Hello World!");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
项目属性已被修改: 1)库 -> 模块路径新增路径 C:/Program Files/Java/javafx-sdk-11.0.2/lib 2)库 -> 类路径新增路径 C:/Program Files/Java/javafx-sdk-11.0.2/lib/javafx.controls.jar 3)运行 -> VM选项:新增 --add-modules=javafx.controls,javafx.fxml
当我使用NetBeans启动应用程序时,它可以完美地工作,但我无法从dist文件夹中启动应用程序。我在cmd中尝试了以下命令: 1) 命令:
java -jar JFXDev.jar
- 响应:
Error: could not find or load main class com.Main
java --module-path '%PATH_TO_FX% --add-modules=javafx.comntrols JFXDev
- 响应:
Error: Could not find or load main class Files/Java/javafx-sdk-11.0.2/lib
java --module-path %PATH_TO_FX% --add-modules=javafx.comntrols Main
- 响应:
Error: Could not find or load main class Files/Java/javafx-sdk-11.0.2/lib
java --module-path %PATH_TO_FX% --add-modules=javafx.comntrols com.Main
- 响应:
Error: Could not find or load main class Files/Java/javafx-sdk-11.0.2/lib
java --module-path "C:/Program Files/Java/javafx-sdk-11.0.2/lib/" --add-modules=javafx.comntrols com.Main
- 响应:
Error: Could not find or load main class Main
module-info.java
文件:module JFXDev {
requires javafx.controls;
exports com;
}
但这没有任何区别。
我做错了什么,有什么建议或建议吗?
我尝试了https://openjfx.io/openjfx-docs/#install-javafx的步骤,但是我还是得到相同的错误:/
"%PATH_TO_FX%"
(包含引号)会怎样?错误消息表明您的参数中存在空格问题。 - SlawMain-Class
条目的JAR文件,请尝试使用java -p“%PATH_TO_FX%”--add-modules javafx.controls -jar <path-to-jar-file>
命令。 (注意:-p
是--module-path
的简写) - Slaw