Как собрать (gradle) .deb и .exe из java приложения, разработанного с openJavaFx 11 - PullRequest
0 голосов
/ 20 апреля 2020

Я разрабатываю приложение javafx, используя

  • gradle
  • OpenJdk11
  • OpenJfx11
  • sqlite (также хранится в основном пакете as sqlite.db)

Теперь мне нужно собрать файл .deb для установки в Ubuntu и файл .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']
}

1 Ответ

0 голосов
/ 20 апреля 2020

С помощью Gradle вы можете создать только исполняемый JAR, который может работать на Windows и Linux. Чтобы связать его в exe-файл или deb-пакет, вам понадобится несколько плагинов Gradle.

Для exe вы можете использовать gradle-launch4j .

Для Деб, вы можете подать в суд gradle-ospackage-plugin . Вы найдете документацию здесь .

...