【问题标题】:Gluon build as single JarGluon 构建为单个 Jar
【发布时间】:2016-04-06 08:13:26
【问题描述】:

我想将我的 Gluon 项目构建为单个可执行 jar 文件。

目前有一个包含在 bin 文件夹等中的启动脚本。

是否可以构建单个 jar?或者我可以包含一个完成此任务的自己的 gradle 任务吗?

【问题讨论】:

    标签: executable-jar javafxports gluon gluon-desktop


    【解决方案1】:

    installAppdistZip 等当前任务不会将 jar 包捆绑在一起。

    如果你想创建一个'fat-jar',你可以将这个plugin添加到你的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。

    注意:如果您使用 desktopCompiledesktopRuntime 依赖项,则不会包含这些依赖项,因此您需要将它们更改为 compileruntime

    【讨论】:

    • 谢谢你的回答,我自己修好了。由于 Javafx,我在构建它时遇到了问题,就像普通的 jar 一样。但现在有效:D
    【解决方案2】:

    因为我必须使用 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")
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-02-01
      • 1970-01-01
      • 2019-12-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多