SpringBoot 打包静态资源和 jar包分离怎么配置?

Posted 毕小宝

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot 打包静态资源和 jar包分离怎么配置?相关的知识,希望对你有一定的参考价值。

背景

SpringBoot 的网关服务静态资源打包时配置了和 jar 包分离,启动后静态首页报 404,有点不合常理,理论上它应该可以自己找到 jar 包所在目录下的 static 文件的。该怎么配置呢?

为什么需要静态资源分离

SpringBoot 项目的静态分离的好处是,当静态文件发生变化时,只需要更新静态文件,而不用重启。

步骤:
1、打包配置排除静态资源文件和 yml 系统配置文件。
2、将 static 和 yml 配置放在 jar 包一起。
3、配置文件指定 spring.web.resources.static-locations

遇到的问题

版本是 2.5.2 ,以前用 2.1.6 版本的时候,配置静态资源路径为 classpath:static/,运行时访问首页报 404 ,静态文件没找到。

调整配置:

spring:
   web:
    resources:
      static-locations: file:static/

用 file 的相对路径时,能正常找到当前可执行 jar 包下的静态资源。

以上是关于SpringBoot 打包静态资源和 jar包分离怎么配置?的主要内容,如果未能解决你的问题,请参考以下文章

SpringBoot 打包静态资源和 jar包分离怎么配置?

springboot打包依赖包和配置文件分离

spring boot打jar包运行,加载jar包外部的页面以及静态资源文件

maven打包分离依赖的jar包和静态资源

Springboot依赖打包分离及第三方包

SpringBoot 项目打包分开lib,配置和资源文件