記録一次JDK 11下運行JavaFX(IntelliJ IDEA的Maven項目下)
從JDK 11開始,JavaFX已經(jīng)不包含在JDK裡,所以我們要運(yùn)行JavaFX程式,會(huì)比之前的版本中運(yùn)行要麻煩一些。為此我查閱了一下JavaFX社區(qū)的資料:https://openjfx.io/openjfx-docs/
?
第一步,在IntelliJ IDEA中新建一個(gè)Maven項(xiàng)目,archetype那選上"org.codehaus.mojo.archetypes:javafx":
GroupId處可以寫自己定義的包名,例如:org.myjfx;ArtifactId處也可寫自己喜歡的名字,例如hellofx:
如果彈出了窗口詢問是否啟用Maven的自動(dòng)導(dǎo)入,建議選擇啟用。
項(xiàng)目構(gòu)建完成以後,我們把pom.xml文件中的代碼替換成這個(gè)網(wǎng)站中的:https://github.com/openjfx/samples/blob/master/IDE/IntelliJ/Modular/Maven/hellofx/pom.xml
再把其中的<mainClass>(這裡是第14行)標(biāo)籤中的內(nèi)容修改為自己項(xiàng)目中的MainApp類的全限定名,這裡是org.myjfx.MainApp:
下方還有一個(gè)<mainClass>標(biāo)籤(這裡是第58行),我們把內(nèi)容修改為${mainClass}:
接著,我們?cè)侔秧?xiàng)目編譯一遍,Windows系統(tǒng)下可以使用快捷建 Ctrl + F9(雖然社區(qū)文檔是讓我們點(diǎn)擊窗口右邊的Maven項(xiàng)目窗口,然後{項(xiàng)目名}->Plugins->compiler->compiler:compile,但我發(fā)現(xiàn)這樣的話是不會(huì)編譯resources文件夾下的內(nèi)容的),編譯成功後會(huì)生成target文件夾:
此時(shí)只要雙擊exec:java即可運(yùn)行JavaFX項(xiàng)目,並彈出相應(yīng)的窗口:
?
如此,便成功地在JDK 11版本上執(zhí)行了JavaFX程式。
?
但此時(shí)還不能通過(guò)點(diǎn)擊綠色的小三角形來(lái)運(yùn)行項(xiàng)目,運(yùn)行的話是會(huì)報(bào)錯(cuò)的。這個(gè)時(shí)候我們要在main/java下新建一個(gè)module-info.java文件(注意是在java目錄下新建,不要新建在org.myjfx包裡了):
裡面的內(nèi)容如下:
module HelloFX {requires javafx.fxml;requires javafx.controls;opens org.myjfx to javafx.fxml;exports org.myjfx; }此時(shí)再點(diǎn)擊三角形就能正常運(yùn)行了:
本文結(jié)束!
總結(jié)
以上是生活随笔為你收集整理的記録一次JDK 11下運行JavaFX(IntelliJ IDEA的Maven項目下)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何在地址栏显示图标
- 下一篇: Java爬虫学习——实例:获取起点中文网