JavaFX系列-配置開發環境


本文主要介紹JavaFX環境的搭建和如何部署JavaFX應用

添加JavaFX依賴

在工程 build.gradle 中加入以下內容:

plugins {
    id 'application'
    id 'org.openjfx.javafxplugin' version '0.0.8' // 引入JavaFX的jar包
}

javafx {
    version = "14" // Java版本
    modules = [ 'javafx.controls' ] // 所需要的模塊
    manifest {
        mainClassName = 'com.ingbyr.vdm.gui.Main' // 運行入口
    }
}

自定義運行時

Java9引入的Jigsaw允許我們制作自己的JRE,從而有效地減少應用的大小

首先下載JavaFX的jmods保存到 ./jmods/

jmods
├── javafx.base.jmod
├── javafx.controls.jmod
├── javafx.fxml.jmod
├── javafx.graphics.jmod
├── javafx.media.jmod
├── javafx.swing.jmod
└── javafx.web.jmod

然后使用jlink生成自定義運行時

jlink \
--module-path ./jmods \
--add-modules java.base,javafx.base,javafx.graphics,javafx.controls \
--output runtime
  • module-path 第三方模塊的目錄
  • add-modules 運行時所需的模塊
  • output 自定義運行時目錄名稱

生成的運行時目錄如下

runtime
├── bin
├── conf
├── include
├── legal
├── lib
├── man
└── release

編譯應用

使用gradle插件application中提供的tasks -> distribution -> installDist構建任務來編譯應用,生成的目錄如下

build/install
└── vdm-gui
    ├── bin
    │   ├── vdm-gui
    │   └── vdm-gui.bat
    └── lib
        ├── javafx-base-14-mac.jar
        ├── javafx-base-14.jar
        ├── javafx-controls-14-mac.jar
        ├── javafx-graphics-14-mac.jar
        ├── javafx-graphics-14.jar
        └── vdm-gui-2.0.0.jar

部署應用

Java14中正式提供了jpackage工具,該工具可以十分方便的部署跨平台應用安裝包,示例如下

jpackage \
--input vdm-gui/build/install/vdm-gui/lib \
--name vdm14 \
--main-jar vdm-gui-2.0.0.jar \
--main-class com.ingbyr.vdm.gui.Main \
--type dmg \
--runtime-image ~/IdeaProjects/vdm14/runtime
  • input 需要打包的jar目錄
  • name 應用名稱
  • main-jar 主程序jar包
  • main-class 若jar中沒有指定主類,則可以使用此參數指定
  • type 安裝包類型,可選:
    • Windows: exe msi
    • Linux: rpm deb
    • MacOS: pkg dmg
  • runtime-image 自定義的運行時


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM