到底应该怎么办?spring boot的maven项目打包找不到静态资源

Spring Boot项目中,静态资源默认加载路径包括/META-INF/resources/、/resources/、/static/和/public/。当打包后找不到静态资源如jpg和html时,可能由于Maven的pom.xml配置过滤了相关文件。解决方法是在pom.xml中正确配置,确保static文件夹下的所有文件都能被包含。问题解决后,项目能正常访问静态资源。
摘要由CSDN通过智能技术生成

spring boot默认加载文件的路径:

    /META-INF/resources/
    /resources/
    /static/
    /public/

我们也可以从spring boot源码也可以看到:

private static final String[] CLASSPATH_RESOURCE_LOCATIONS = {  
        "classpath:/META-INF/resources/",
        "classpath:/resources/",  
        "classpath:/static/",
        "classpath:/public/" 
};  

classpath就是:src/main/resources/

SpringBoot之静态资源访问

1.springboot访问静态资源的几种方式
            (1)在src/main/resources/目录下创建
static文件夹
           (2)在src/main/resources/目录下创建
resources文件夹
           (3)在src/main/resources/目录下创建
public文件夹
            (4)在src/main/resources/目录下创建
META-INF/resources文件夹:

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
spring-boot-maven-plugin 是一个 Maven 插件,它可以将 Spring Boot 应用程序打包成可执行的 JAR 文件,同时也可以将应用程序的依赖项打包成内置的 JAR 文件。这个插件还有一个很棒的功能,就是它可以将应用程序的配置文件打包到 JAR 包之外,这样在应用程序升级时,可以直接替换现有的 JAR 文件而不需要担心会覆盖配置文件。 在默认的情况下,Spring Boot 将 application.properties 或者 application.yml 文件打包到 JAR 包的根目录下,这种默认的方式并不是最好的,因为在应用程序升级时,配置文件会被一起打包进去,这样会产生一些困扰,比如你需要手动备份这些配置文件。 为了解决这个问题,spring-boot-maven-plugin 插件提供了一个很好的解决方案,就是将配置文件打包到 JAR 包之外,具体的做法是在 pom.xml 文件中添加如下配置: ```xml <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <classifier>exec</classifier> </configuration> <executions> <execution> <id>repackage</id> <goals> <goal>repackage</goal> </goals> <configuration> <classifier>exec</classifier> <compress>false</compress> <shutdown>graceful</shutdown> <finalName>${project.artifactId}-${project.version}-exec</finalName> </configuration> </execution> </executions> </plugin> </plugins> </build> ``` 这个配置中添加了一个 classifier 属性,它会创建一个带有 exec 后缀的 JAR 包,该 JAR 包除了包含应用程序的类文件和依赖项,还会包含配置文件和其他静态资源文件。在 pom.xml 文件中加入以上配置,并在应用程序的根目录下创建一个名为 config 的目录,将配置文件放置在该目录中,然后重新编译和打包应用程序,你将会得到一个新的 JAR 文件,该文件会在根目录下生成一个名为 config 的文件夹,其中包含你的配置文件。这样就实现了将配置文件打包到 JAR 包之外的目的。 总结一下,spring-boot-maven-plugin 插件提供了一个将应用程序的配置文件打包到 JAR 包之外的方式,只需要在 pom.xml 文件中配置一个 classifier 属性即可实现。这样可以避免在应用程序升级时面临配置文件被覆盖的问题,也便于组织和管理配置文件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

唐 城

小朋友,你是不是有很多问号?

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值