如何正确打包使用JavaFX和Gradle构建的桌面应用程序

时间:2019-07-30 16:18:57

标签: javafx

我已经下载了最新的JavaFX 11.0.2JDK 12.0.2,并使用Gradle用它构建了JavaFX应用程序。

现在,我希望将最终应用程序打包为Windows计算机上的可安装文件,但似乎无法正确解决。一切尝试对我来说都是失败的。

这是我的build.gradle文件的设置

plugins {
    id 'java'
    id 'application'
    id 'org.openjfx.javafxplugin' version '0.0.7'
}

group 'com.databox'
version '1'

mainClassName = "com.databox.launcher.ApplicationLoader"
sourceCompatibility = 1.8

repositories {
    mavenCentral()
}

dependencies {
    testImplementation group: 'junit', name: 'junit', version: '4.12'
    implementation group: 'org.iq80.leveldb', name: 'leveldb', version: '0.12'
    implementation group: 'org.json', name: 'json', version: '20180813'
}

javafx {
    version = "12.0.1"
    modules = ['javafx.base', 'javafx.fxml', 'javafx.controls', 'javafx.web']
}

我正在使用的一个非常重要的依赖项是Java的leveldb jni端口,我认为它使用了一些私有的Guava api,因此在使用jlink导出最终应用程序时也遇到了问题。

是否有适当的方法可以打包此应用程序而不剥离任何模块。

谢谢

0 个答案:

没有答案