无法从Eclipse运行JavaFx代码

我在oracle站点上找到了此代码,但是我无法使用Eclipse启动,这是说“无法启动”。我已经安装了JDK 8,但是它不起作用…

有人有解决办法吗?:p

public class SwingFX extends Application {

@Override

public void start (Stage stage) {

final SwingNode swingNode = new SwingNode();

createSwingContent(swingNode);

StackPane pane = new StackPane();

pane.getChildren().add(swingNode);

stage.setTitle("Swing in JavaFX");

stage.setScene(new Scene(pane, 250, 150));

stage.show();

}

private void createSwingContent(final SwingNode swingNode) {

SwingUtilities.invokeLater(new Runnable() {

@Override

public void run() {

swingNode.setContent(new JButton("Click me!"));

}

});

}

}

链接到找到代码的网站:https : //docs.oracle.com/javafx/8/embed_swing/jfxpub-

embed_swing.htm

回答:

在Java 8中,javafx.application.Application即使没有main(String[]

args)方法,您也可以直接启动子类。问题是当前版本的Eclipse不会对此进行检查,并且(至少在上下文菜单中)仅检查该main(...)方法是否存在。因此,要允许它从Eclipse运行,您可以main(...)自己添加方法:

public class SwingFX extends Application {

@Override

public void start(Stage stage) {

// ...

}

public static void main(String[] args) {

launch(args);

}

}

或者,您可以直接从“运行配置”向导指示Eclipse运行它。选择SwingFX班级后,从菜单中选择“运行”,然后选择“运行配置”。确保在“主要”选项卡中显示正确的类名称(即“

SwingFX”),然后按“运行”按钮。

设置好之后,工具栏上的绿色“运行”按钮(在Java透视图中)将再次运行该应用程序,直到您运行其他内容为止。

以上是 无法从Eclipse运行JavaFx代码 的全部内容, 来源链接: utcz.com/qa/431571.html

回到顶部