用JavaFX寫GUI的朋友肯定少不了SceneBuilder這個(gè)神器,拖拖拽拽就能完成窗口布局兑徘。但是對(duì)于Mac M1的用戶來(lái)說(shuō), SceneBuilder 并沒有提供M1版本,官方的intel版本能用但是很卡叼旋,用起來(lái)很難受刃麸。下面我們來(lái)看看如何直接從源碼構(gòu)造M1版本的SceneBuilder。
準(zhǔn)備工作
首先我們要下載M1版本的Zulu OpenJDK 16, 用來(lái)編譯源碼酪我,然后要去Gluon的官網(wǎng)下載M1版本的JavaFX SDK消痛, 如下:
JavaFX Mac OS X AArch64 SDK:
https://gluonhq.com/products/javafx/#ea
最后去github上拉取SceneBuilder master分支的代碼:
git clone https://github.com/gluonhq/scenebuilder --depth=1
至此準(zhǔn)備工作完成。
編譯運(yùn)行
切換到sceneBuilder項(xiàng)目目錄都哭,執(zhí)行
mvn clean package -Dmaven.test.skip=true
編譯代碼秩伞,注意要提前將命令行環(huán)境中的JAVA切換成剛剛下載好的Zulu OpenJDK 16, 否則如果OpenJDK版本低于11的話會(huì)編譯失敗。
完成后需要安裝依賴到本地倉(cāng)庫(kù):
mvn install -Dmaven.test.skip=true
接下來(lái)就可以直接運(yùn)行了:
java \
--module-path ${JavaFX SDK解壓后的目錄}/lib \
--add-modules javafx.web,javafx.fxml,javafx.swing,javafx.media \
--add-opens=javafx.fxml/javafx.fxml=ALL-UNNAMED \
-cp app/target/lib/${mvn package打出來(lái)的jar包} \
com.oracle.javafx.scenebuilder.app.SceneBuilderApp
你會(huì)發(fā)現(xiàn)SceneBuilder絲滑流暢欺矫,開始寫代碼吧纱新!