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