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

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

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文件夹:

如图

960e2960d940871438a4d8c967cf510.png

但是项目运行后无论如何都找不到相关的jpg文件和html文件等,

后来找了好久才发现在maven的pom中有设置编译时过滤项目相关文件夹下各种匹配文件的配置,

因为接手的前人的项目所以对这块没了解到所以被卡在这小半天才发现,具体的配置如下:

01d3084d506bc8cfeb03c22a31d867b.png

修改如下:将static下的所有文件都获取

212c36976641be500c2084adb7e93c9.png

之后就没问题了

目录
相关文章
|
1月前
|
存储 前端开发 Java
Springboot静态资源映射及文件映射
在Spring Boot项目中,为了解决前端访问后端存储的图片问题,起初尝试通过静态资源映射实现,但发现这种方式仅能访问打包时已存在的文件。对于动态上传的图片(如头像),需采用资源映射配置,将特定路径映射到服务器上的文件夹,确保新上传的图片能即时访问。例如,通过`addResourceHandler("/img/**").addResourceLocations("file:E:\\myProject\\forum_server\\")`配置,使前端可通过URL直接访问图片。
Springboot静态资源映射及文件映射
|
1月前
|
网络协议 Java Shell
java spring 项目若依框架启动失败,启动不了服务提示端口8080占用escription: Web server failed to start. Port 8080 was already in use. Action: Identify and stop the process that’s listening on port 8080 or configure this application to listen on another port-优雅草卓伊凡解决方案
java spring 项目若依框架启动失败,启动不了服务提示端口8080占用escription: Web server failed to start. Port 8080 was already in use. Action: Identify and stop the process that’s listening on port 8080 or configure this application to listen on another port-优雅草卓伊凡解决方案
73 7
|
2月前
|
Java 测试技术 应用服务中间件
Spring Boot 如何测试打包部署
本文介绍了 Spring Boot 项目的开发、调试、打包及投产上线的全流程。主要内容包括: 1. **单元测试**:通过添加 `spring-boot-starter-test` 包,使用 `@RunWith(SpringRunner.class)` 和 `@SpringBootTest` 注解进行测试类开发。 2. **集成测试**:支持热部署,通过添加 `spring-boot-devtools` 实现代码修改后自动重启。 3. **投产上线**:提供两种部署方案,一是打包成 jar 包直接运行,二是打包成 war 包部署到 Tomcat 服务器。
55 10
|
3月前
|
存储 JSON 前端开发
【Spring项目】表白墙,留言板项目的实现
本文主要介绍了表白墙项目的实现,包含前端和后端代码,以及测试
|
3月前
|
JSON 前端开发 Java
|
3月前
|
缓存 前端开发 Java
【Spring】——SpringBoot项目创建
SpringBoot项目创建,SpringBootApplication启动类,target文件,web服务器,tomcat,访问服务器
|
4月前
|
XML Java 测试技术
从零开始学 Maven:简化 Java 项目的构建与管理
Maven 是一个由 Apache 软件基金会开发的项目管理和构建自动化工具。它主要用在 Java 项目中,但也可以用于其他类型的项目。
125 1
从零开始学 Maven:简化 Java 项目的构建与管理
|
4月前
|
Java Maven
maven项目的pom.xml文件常用标签使用介绍
第四届人文,智慧教育与服务管理国际学术会议(HWESM 2025) 2025 4th International Conference on Humanities, Wisdom Education and Service Management
407 8
|
4月前
|
Java 应用服务中间件 Maven
Maven的三种项目打包方式——pom,jar,war的区别
Maven 提供了多种打包方式,分别适用于不同类型的项目。pom 用于父项目或聚合项目,便于项目的结构和依赖管理;jar 用于Java类库或可执行的Java应用程序;war 则专用于Java Web应用程序的部署。理解这些打包方式的用途和特点,可以帮助开发者更好地配置和管理Maven项目,确保构建和部署过程的顺利进行。无论是单模块项目还是多模块项目,选择合适的打包方式对于项目的成功至关重要。
484 3
|
4月前
|
存储 运维 安全
Spring运维之boot项目多环境(yaml 多文件 proerties)及分组管理与开发控制
通过以上措施,可以保证Spring Boot项目的配置管理在专业水准上,并且易于维护和管理,符合搜索引擎收录标准。
109 2

推荐镜像

更多