1

Gluon プロジェクトを単一の実行可能な jar ファイルとしてビルドしたいと考えています。

現在、bin フォルダーなどに含まれる起動スクリプトがあります。

単一のjarを構築することは可能ですか? または、これを達成する独自の gradle タスクを含めることはできますか?

4

2 に答える 2

0

現在のタスクは、jar を 1 つにまとめたり、バンドルしinstallAppたりdistZipしません。

「fat-jar」を作成する場合は、このプラグインを build.gradle スクリプトに追加できます。

buildscript {
    repositories {
        jcenter()

    }
    dependencies {
        classpath 'org.javafxports:jfxmobile-plugin:1.0.8'
        classpath 'com.github.jengelman.gradle.plugins:shadow:1.2.3'
    }
}

apply plugin: 'org.javafxports.jfxmobile'
apply plugin: 'com.github.johnrengelman.shadow'

そして実行しgradlew shadowJarます。libs の下に実行可能な jar が作成されます。

注:desktopCompileまたはdesktopRuntime依存関係を使用している場合、それらは含まれないため、それらをcompileまたはに変更する必要がありますruntime

于 2016-04-06T13:49:22.473 に答える
0

javapackager で jar をビルドする必要があったため、次のプラグインを使用しました: javafx-gradle-plugin

私はGradleに比較的慣れていないので、依存関係を追加することは一時的な解決策に過ぎませんが、うまくいきます

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'org.javafxports:jfxmobile-plugin:1.0.8'
        classpath group: 'de.dynamicfiles.projects.gradle.plugins', name: 'javafx-gradle-plugin', version: '8.4.1'
    }
}

jfx {
    verbose = true
    mainClass = "package.path.to.main.class.MainClass"
    jfxAppOutputDir = "build/jfx/app" //configurable
    jfxMainAppJarName = "ProjectName.jar"
    deployDir = "src/main/deploy" //for signing

    //many more options, go to link to learn about them
}


jfxJar.doFirst {
    //TODO add all desktop dependencies
    println("adding desktop dependency")
    project.dependencies.add("runtime", "com.gluonhq:charm-desktop:2.1.0")
}
于 2016-04-07T08:25:01.627 に答える