【问题标题】:My JavaFx application works in Netbeans but not in eclipse..Why?我的 JavaFx 应用程序可以在 Netbeans 中运行,但不能在 eclipse 中运行。为什么?
【发布时间】:2015-11-10 16:06:16
【问题描述】:

当我将它输入 Netbeans 时,它可以工作,并且我的应用程序会显示在屏幕上,但我更喜欢使用 eclipse,所以当我将它复制并粘贴到 Eclipse 中时,它不起作用,请有人帮忙。这是我得到的错误,它没有编译。

java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(Unknown Source)
at com.sun.javafx.application.LauncherImpl.launchApplication(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at sun.launcher.LauncherHelper$FXHelper.main(Unknown Source)

原因:java.lang.Error:未解决的编译问题: 访问限制:方法 'Application.launch(String[])' 不是 API(对所需库 'C:\Program Files\Java\jre1.8.0_51\lib\ext\jfxrt.jar' 的限制)

at Tutorial1.main(Tutorial1.java:10)
... 11 more

异常运行应用程序教程1

import javafx.application.*;
import javafx.stage.*;
import javafx.scene.*;
import javafx.scene.layout.*;
import javafx.scene.control.*;

public class Tutorial1 extends Application {

    public static void main(String[] args) {
        launch(args);
    }

    Button btn;

    @Override public void start(Stage primaryStage)
    {
        btn = new Button();
        btn.setText("Click Me Please");
        btn.setOnAction(e -> buttonClick());

        BorderPane pane = new BorderPane();
        pane.setCenter(btn);

        Scene scene = new Scene(pane, 300, 250);

        primaryStage.setScene(scene);
        primaryStage.setTitle("The Click Me App");
        primaryStage.show();

    }

    public void buttonClick() 
    {
        if (btn.getText() == "Click Me Please") 
            {
            btn.setText("You Clicked Me");
            }
            else 
            {
            btn.setText("Click Me Please");
        }
    }
}

【问题讨论】:

  • “没用”是什么意思?它编译了吗?它抛出异常了吗?您收到了哪些错误消息?
  • 在 Eclipse 上尝试了你的代码并且工作正常,所以正如@James_D 所说,你应该更具体
  • 这是我遇到的错误
  • 以防万一,我想你的构建路径没问题,对吧?检查项目属性 -> Java 构建路径 -> 库。您应该有JRE,在选择它时,单击编辑时,它应该在执行环境中具有版本8。我记得从 java 7 切换到 8 时遇到了类似的错误。当我遇到这个问题时,我在 eclipse 首选项中解决了它-> 安装了 JRE,删除了 java8 并再次添加它。但也许我只是幸运:P

标签: java eclipse netbeans javafx javafx-8


【解决方案1】:

1 - 在 Eclise 中使用 JavaFX 不需要任何插件。

2 - 当您创建新的“Java 项目”时,Eclipse 和 Netbeans 具有不同的文件夹结构。

最好的问候,

【讨论】:

  • 如果您有旧版(Java 8 之前)JDK,则只需要该 jar(并且它仅存在于该位置)。 OP 显然使用的是 Java 8(因为代码包含 lambda 表达式)。
猜你喜欢
  • 2016-01-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-03-24
  • 2020-09-29
  • 2013-08-08
  • 1970-01-01
相关资源
最近更新 更多