2

我正在使用 Gradle 和Badass JLink 插件来分发我的软件。不幸的是,我无法弄清楚如何在图像中包含某些文件(例如 README.md、一些测试输入等)。我认为它需要一些工作build.gradle,但到目前为止我还无法弄清楚。

按照这些说明application使用插件的distZip功能很容易做到这一点,但我更喜欢使用 jlink 图像进行分发,这样用户就不需要安装 Java。

这甚至可能与jlink有关吗?如果没有,这似乎是一个巨大的缺点。

4

2 回答 2

3

感谢@VGR 的有用评论,我能够想出这个解决方案来解决我的问题build.gradle

def JLINK_DIR = "$buildDir/myApp"

tasks.jlink.doLast {
    copy {
        from("/") {
            include "README.md", "LICENSE"
        }
        into JLINK_DIR + "/docs"
    }
    copy {
        includeEmptyDirs = false
        from("/path/to/sample/input") {
            include "sample_input_1/*"
            include "sample_input_2/*"
            exclude "output"
        }
        into JLINK_DIR + "/sample_input"
    }
}

Gradle Docs on copy和Badass JLink Plugin 示例特别有用。

于 2019-06-28T05:41:18.407 回答
1

谢谢你,它真的很有帮助。对我来说,我试图添加到安装程序。我必须执行以下操作:

def JLINK_DIR = "$buildDir/jpackage/MyApp"

tasks.jpackage.doFirst {
    copy {
        from("/config") {
            include "config.properties"
        }
        into JLINK_DIR + "/config"
    }
}
于 2021-06-16T13:45:39.797 回答