[英]Some javafx classes cannot be resolved in Eclipse using Java SE 8u25
我從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.Button.setText(String)
時,無法解析類型javafx.scene.control.Control。它是從所需的.class文件間接引用的”。 嘗試創建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();
}
}
Tl; dr:Java SE 8u25中似乎缺少一些JavaFX類,或者我在構建路徑中包含jre時犯了一個錯誤。
注意:我已經看到您正在使用Eclipse Helios。 您還可以下載最新版本的Eclipse Luna。 這也可以。
在使用Eclipse開發FX應用程序時,您可以嘗試使用e(fx)clipse ,這可能是一個有用的IDE擴展。 為此,請按照下列步驟操作:
Help > Install New Software
”,然后在“使用:”下插入URL http://download.eclipse.org/efxclipse/updates-released/1.1.0/site/
並按Enter鍵 File > New > Other ...
並選擇JavaFX > JavaFX Project
jfxrt.jar
添加到類路徑中。
C:\\Program Files\\Java\\jdk1.8.0_25\\jre\\lib\\ext
./Library/Java/JavaVirtualMachines/jdk1.8.0_11.jdk/Contents/Home/jre/lib/ext/jfxrt.jar
。 注意:e(fx)clipse為開發JavaFX應用程序提供了更多支持。 隨意看看。
編輯 :
您尚未導入StackPane的類:
import javafx.scene.layout.StackPane;
上一個答案:
基本上你沒有導入你的javafx庫,你可以Add External JARs
,並指出jfxrt.jar
,它會工作得很好。
在我的路徑中, jfxrt.jar
位於:
C:\Program Files\Java\jdk1.8.0_25\jre\lib\ext
有一個簡單的方法,
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.