2

我正在尝试使用我的混淆 jar 使用 Launch4J 创建一个可执行文件,但我遇到了问题。每次我createEXE通过 Gradle 运行任务时,shadowJar 任务也会运行,导致我的混淆 jar 被覆盖。

createExe如何在 Launch4J 的任务中使用我的混淆 jar ?否则如何shadowJar在执行期间停止运行createExe

这是我的 Launch4J 任务:

launch4j {
    jar = "${projectDir}/build/libs/plugin.jar"
    outfile = 'Plugin.exe'
    icon = "${projectDir}/etc/icon.ico"
    mainClassName = 'plugin.Driver'
    bundledJrePath = './jre'
    jreMinVersion = '1.8.0_161'
    jdkPreference = 'preferJdk'
}
4

1 回答 1

1

您应该使用该选项忽略shadowJar任务。-x它告诉 Gradle 跳过指定的任务。

gradle -x shadowJar createExe

您也可以永久这样做:

gradle.taskGraph.whenReady { taskGraph ->
    if (taskGraph.hasTask(createExe)) {
        shadowJar.enabled = false
    }
}
于 2018-11-28T07:32:09.507 回答