Eclipse没有运行JavaFX应用程序 - 运行'java'应用程序
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Eclipse没有运行JavaFX应用程序 - 运行'java'应用程序相关的知识,希望对你有一定的参考价值。
每当我在Eclipse中创建项目并包含javafx时,单击运行按钮时都不会加载应用程序。
EG
package test;
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 test extends Application {
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) {
primaryStage.setTitle("Hello World!");
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);
primaryStage.setScene(new Scene(root, 300, 250));
primaryStage.show();
}
}
这应该运行一个简单的hello world应用程序,取自oracle文档。但是,当我'运行'此代码时,没有窗口打开。而是打开一个名为'java'的应用程序。看来'java'只是位于'jdk1.8.0_25.jdk / contents / home / bin'中的'unix可执行文件'。应用程序'java'绝对没有显示任何内容,并且在没有强制退出的情况下无法关闭。
我在Macbook上运行eclipse。我可能遗漏了一些重要细节......
有谁知道为什么我的应用程序没有按预期运行?原谅我的天真,我是java和eclipse的新手。
非常感谢
编辑:
import javafx.application.Application;
import javafx.stage.Stage;
public class JavaFX extends Application {
public static void main(String[] args){
launch(args);
}
@Override
public void start(Stage stage) throws Exception {
// TODO Auto-generated method stub
stage.show();
}
}
这个简单的程序也会出现同样的错误。
答案
可能的解决方案从日食市场https://www.eclipse.org/efxclipse/install.html安装
另一答案
当我尝试在具有maven依赖关系的现有SWT项目中运行JavaFX主类时,我遇到了同样的问题:
<dependency>
<groupId>org.eclipse.swt</groupId>
<artifactId>org.eclipse.swt.cocoa.macosx.x86_64</artifactId>
<version>4.3</version>
</dependency>
当我注释掉这个依赖项时,显示了应用程序窗口,一切运行良好。
以上是关于Eclipse没有运行JavaFX应用程序 - 运行'java'应用程序的主要内容,如果未能解决你的问题,请参考以下文章
错误:缺少 JavaFX 运行时组件,需要在 Eclipse 中运行此应用程序