如何将src/dist目录内容加入Spring Boot分发包中?
解决Spring Boot Gradle插件打包src/dist目录到分发包的问题
你说得没错,Spring Boot的Gradle插件确实没有自动集成Application插件处理src/dist目录的逻辑,不过我们只需要简单配置一下bootDistZip和bootDistTar这两个分发任务就能搞定这个问题。
具体配置方案
你可以在现有的build.gradle脚本末尾添加以下代码,把src/dist目录的内容添加到分发压缩包中:
// 为Spring Boot的分发任务添加src/dist目录内容 [bootDistZip, bootDistTar].each { distTask -> distTask.into('') { from 'src/dist' } }
配置细节说明
[bootDistZip, bootDistTar].each:同时配置zip和tar两个分发任务,避免重复写两次相同逻辑into(''):指定把src/dist的内容放到分发包的根目录,如果想把文件统一放到子目录(比如config),只需要改成into('config')即可from 'src/dist':明确指定要打包的源目录就是项目根下的src/dist,目录里的层级结构会被完整保留
验证效果
配置完成后,执行Gradle命令:
./gradlew bootDistZip
然后在build/distributions目录下找到生成的zip包,解压后就能看到src/dist里的内容已经被正确包含进去了,效果和使用Application插件时一致。
内容的提问来源于stack exchange,提问作者KIC
相关产品推荐
相关产品推荐

