使用Java SE 8u25无法在Eclipse中解析某些javafx类

Gec*_*tar 5 java eclipse javafx

我从Oracle安装了Java SE 8u25 JDK(64位),其中应包括JavaFX.

我正在使用Win7 64位,Eclipse Helios并将jre包含在类路径中,如下所示: 在此输入图像描述

我正在尝试复制本教程中的代码:http: //docs.oracle.com/javase/8/javafx/get-started-tutorial/hello_world.htm

Eclipse向我显示"类型javafx.scene.control.Control无法解析.它在尝试使用时间接引用所需的.class文件" javafx.scene.control.Button.setText(String).尝试创建StackPane对象时会出现类似的问题.

这是迄今为止的代码:

package javaFX;

import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.control.Button;
import javafx.stage.Stage;

public class HelloWorld extends Application {

@Override
public void start(Stage primaryStage) throws Exception {

    Button btn = new Button();
    btn.setText("Hello world!");
    btn.setOnAction(new EventHandler<ActionEvent>(){

        @Override
        public void handle(ActionEvent arg0) {
            System.out.println("Hello world!");
        }

    });

    StackPane root = new StackPane();

}
}
Run Code Online (Sandbox Code Playgroud)

Tl; dr:Java SE 8u25中似乎缺少一些JavaFX类,或者我在构建路径中包含jre时犯了一个错误.

myt*_*hbu 12

注意:我已经看到您正在使用Eclipse Helios.您还可以下载最新版本的Eclipse Luna.这也可以.


在使用Eclipse开发FX应用程序时,您可以尝试使用e(fx)clipse,这可能是一个有用的IDE扩展.为此,请按照下列步骤操作:

  1. 打开Eclipse并转到Help > Install New Softwarehttp://download.eclipse.org/efxclipse/updates-released/1.1.0/site/在"使用:"下插入URL ,然后按Enter键
  2. 加载包后,选择并安装它们
  3. 重新启动Eclipse后,您可以转到File > New > Other ...并选择JavaFX > JavaFX Project
  4. 还有一个步骤要做:jfxrt.jar通过转到项目属性并选择"Add external JAR ..." 将其添加到类路径中.
    • 视窗: C:\Program Files\Java\jdk1.8.0_25\jre\lib\ext
    • Mac OS : ./Library/Java/JavaVirtualMachines/jdk1.8.0_11.jdk/Contents/Home/jre/lib/ext/jfxrt.jar.
  5. 准备制作可爱的JavaFX GUI!

工作实例.

注意:e(fx)clipse为开发JavaFX应用程序提供了更多支持.随意看看.