将gradle spring-boot bootDistTar自定义脚本放入tar包

时间:2018-10-04 21:35:56

标签: spring-boot gradle

gradle应用程序插件的默认行为是使用/bin/lib创建软件包,其中分别包含启动脚本(bash + .bat)和启动jar。

这是我需要的:

  • 具有我自己的自定义启动脚本(将PID保存在其他位置)。基于resources/unixStartScript.txt创建的默认值对我的需求来说算是过分了。
  • 禁止创建.bat脚本。只是垃圾,我必须交出.tar分发文件的linux部署团队的人会因为不必要的内容而拒绝tar。
  • 除了自定义启动脚本之外,我还需要其他一些信息,例如停止脚本,状态等。

到目前为止,我只能做到以下几点:

bootStartScripts {
    unixStartScriptGenerator.template = resources.text.fromFile('scripts/start.sh.template')
}

但这不会阻止Windows脚本的生成。我也尝试过windowsStartScriptGenerator = null,但还是失败了,还尝试了:

windowsStartScriptGenerator = new ScriptGenerator() {
    void generateScript(JavaAppStartScriptGenerationDetails details, Writer dest) {
    }
}

...但是最后一次尝试仅使Windows脚本内容为空白,但文件仍然存在。

有没有一种方法可以简单地覆盖bootStartScripts定义,使其仅指向我项目(scripts/*.sh)中的一堆文件,将它们作为模板进行处理,然后将它们(也只有它们)放在下面/bin文件中的.tar

0 个答案:

没有答案