<可以運作但無法正確和ScenBuilder互動,無法解決> 建議不要用,太多問題要解決............
https://coolvsvs.pixnet.net/blog/post/224650365 建議閱讀我的這篇文章,改用Netbeans與Maven解決所有的問題,雖然有設定要處理但保證可以像JDK8一樣的開心使用。
1. 先安裝openJDK
https://adoptopenjdk.net/?variant=openjdk11&jvmVariant=openj9
直接用adopt openJDK就可以了
請選擇 open JDK11 ,執行環境可以選 HotSpot或openJ9都可以,HotSpot在需要大量CPU的情況下效能較佳,openJ9的記憶體管控較好
(註: 如果用oracle jdk會需要付費,不能使用在商業用途上)
安裝open JDK:

這個地方選起來後就會自動設定Java_Home,可以輕鬆點
安裝完成請到cmd去,打上 java -version 確認安裝環境(原本已經有安裝別的JVM與JDK,使用這個安裝軟體後會自動幫變更,不需要再額外設定了)
使用openJDK 14 ,Eclipse在下載FX設定時有可能會安裝失敗,請安裝open jdk11,如果要在專案使用open jdk14+ javafx14,
請先 1.下載並安裝open jdk14,到 /控制台/系統/進階設定/環境參數,找到 Java_Home,複製裡面的路徑貼到筆記本內待用,
然後 2.下載並安裝 open jdk11 (總之運行環境必須是Jdk 11不然 Eclipse會出錯)

確認安裝完之後,下載 javaFX14 https://openjfx.io/
然後下載用來編輯FXML用的Scence Builder https://gluonhq.com/products/scene-builder/#download
然後下載 Eclipse https://www.eclipse.org/downloads/
安裝好 ScenceBuilder,然後你可能會找不到他,請到windows的左下角查詢,收尋ScenceBuilder,開啟檔案位置,設置捷徑
安裝 Eclipse ,解壓縮JavaFx
打開Eclipse,它會自動抓取目前的JRE,然後他會請你設定workspace,workspace就是設定檔還有之後專案放置的位置
(如果要刪除Eclipse,請直接將資料夾移除,然後刪除workspace,這樣就會回到初始狀態,不然重新安裝也是會讀取到上一次的狀態)
接下來,要安裝Eclipse內的JavaFx插件,要注意的是,該下載也會同時下載舊版的javaFx,但沒有影響,我們只會使用FXML的部分

改成黑色

字體改大些

等一下下載FX後如果有奇怪的JDK8 版本警告,在這邊可以關掉

點開這裡下載

請輸入
名稱: e(fx)clipse
URL: https://download.eclipse.org/efxclipse/updates-released/3.6.0/site
其實 https://download.eclipse.org/efxclipse/updates-released 連結到這邊後,可以選擇版本,然後可以組成上面的URL,該URL其實內部是一些XML的設定文字
接下來

全部打勾並下載,下載時請注意 Eclipse右下角,會顯示安裝狀態,沒注意有可能會誤解為沒反應,下載好之後還會安裝,安裝後會要求重新開啟,就代表成功了
建立專案


設置 JDK14,請用search,然後把找到上面先準備好的JDK14路徑,在JDK最上層資料夾,直接讓系統收尋就會設定好了

這時候,這邊請選中間,然後可以選擇JDK14,然後next

這時候要載入Java FX 14,請選External JARS

全部載入

一定得打勾




如果之前忘記添加javaFx jar,這裡也可以,請在專案上面按右鍵,然後properties,到指定位置,點一下 library/modulepath就可以增加了

點開module-info.java後,把該些模組都引入

最後要加上exports package名稱;
module jfx02 {
requires javafx.base;
requires javafx.controls;
requires javafx.fxml;
requires javafx.graphics;
requires javafx.media;
requires javafx.swing;
requires javafx.web;
exports jfx02;//package名稱
}

打開ScenceBuilder後,拖拉一個FXML,然後另存到專案路徑下,和Main放在一個位置

右鍵,重置後就會看到剛剛的FXML了
為了方便起見,我們把Eclipse和ScenceBuilder做連結,

以後FXML按右鍵就可以直接用ScenceBuilder開啟
接著打開Main.java
先import javafx.application.*;
繼承 extends Application
覆寫 抽象方法

自動產生 start方法的覆寫
import javafx.fxml.FXMLLoader;
import javafx.scene.*;
import javafx.stage.Stage;
把程式碼改為下方。
package fx02;
import javafx.application.*;
import javafx.fxml.FXMLLoader;
import javafx.scene.*;
import javafx.stage.Stage;
public class Main extends Application{
public static void main(String[] args) {
// TODO Auto-generated method stub
Application.launch(args);
}
@Override
public void start(Stage primaryStage) throws Exception {
// TODO Auto-generated method stub
Parent root =FXMLLoader.load(getClass().getResource("page01.fxml")); //這裡必須改成你的fxml名稱,如果在不同資料夾需要給路徑
primaryStage.setScene(new Scene(root));
primaryStage.show();
}
}
執行~~ 成功囉

OK
加載FXML
請先 登入 以發表留言。