1

我正在开发一个 javafx 应用程序,使用

  • 毕业典礼
  • OpenJdk11
  • OpenJfx11
  • sqlite(它也作为 sqlite.db 存储在主包中)

现在我需要为 ubuntu 安装构建 .deb 文件,为窗口安装构建 .exe 文件

build.gradle 这里

plugins {
    id 'org.openjfx.javafxplugin' version '0.0.8'
}

apply plugin: 'java'
apply plugin: 'jacoco'
apply plugin: 'application'
apply plugin: 'war'

    group = 'dmhashan'

mainClassName = 'dmhashan.payroll.AppStarter'

repositories {
    jcenter()
    mavenCentral()
    mavenLocal()
}

dependencies {
    testImplementation 'junit:junit:4.13'
    implementation 'org.openjfx:javafx:14-ea+2'
    implementation 'com.1stleg:jnativehook:2.0.2'
    implementation 'net.java.dev.jna:jna:5.5.0'
    implementation 'net.java.dev.jna:jna-platform:5.5.0'
    implementation 'com.j256.ormlite:ormlite-core:5.1'
    implementation 'com.j256.ormlite:ormlite-jdbc:5.1'
    implementation 'org.xerial:sqlite-jdbc:3.23.1'
    providedCompile 'com.konghq:unirest-java:3.7.02'
    implementation 'com.konghq:unirest-object-mappers-gson:3.7.02'
}

javafx {
    version = "11.0.2"
    modules = [ 'javafx.controls', 'javafx.fxml', 'javafx.graphics' ]
}

run() {
    jvmArgs = ['--add-exports=javafx.graphics/com.sun.javafx.application=ALL-UNNAMED']
}
4

1 回答 1

1

仅使用 Gradle,您只能构建可以在 Windows 和 Linux 上运行的可执行 JAR。要将其捆绑到 exe 或 deb 包中,您需要一些 Gradle 插件。

对于 exe,您可以使用gradle-launch4j

对于 deb,您可以起诉gradle-ospackage-plugin您可以在此处找到文档。

于 2020-04-20T11:29:29.697 回答