springboot中编译成war出现Failed to load resource: the server responded with a status of 404 ()的问题

我用的eclipse,在代码中直接springboot运行的时候是没出现这个bug的,等到发布为war的时候,出现了报错。
其实原因就是link静态资源没对。
我用的是thymeleaf,但是之前图方便,就直接类似这么引用了

<link href="../js.bootstrap.js"/>

这在调试中没出问题,但是部署发布就bug了,解决也容易,就老老实实写呗。

<link th:href="@{/js/bootstrap.js}" />

ok。
事后进一步分析和解决,点这

### 解决 IDEA 中资源加载时出现的 404 错误 #### 配置 Web 应用程序结构 确保应用程序配置正确,特别是对于基于 Spring MVC 的 web 项目,在 IDEA 中需要手动添加 lib 项目依赖。当启动应用时虽然没有异常提示,但在尝试访问由 SpringMVC 管理的页面时可能会遭遇 404 错误[^1]。 #### 正确设置 Maven 或 Gradle 构建工具 针对 maven 项目中的 404 报错情况,需确认 `pom.xml` 文件内的配置项是否准确无误,并且要特别注意 `web.xml` 文档头部声明应采用 Servlet 规范 3.1 版本或其他兼容版本以避免潜在冲突[^3]。 #### 调整 Tomcat 设置 IDEA 创建并打包 war 文件供内置 Tomcat 使用之前,应该仔细核查项目的构建路径以及输出目录设定;另外还需验证 tomcat 是否能够成功解析所部署的应用程序上下文根路径[^5]。 #### 处理静态资源映射 如果遇到图片等静态资源未能被正确识别的问题,则可能是由于缺少特定前缀所致。例如,在 Java Swing 程序里读取图像文件时加上 "sxt/" 前缀可以解决问题,即调整为 `"sxt/imgs/bg.jpg"` 这样的形式[^2]。 #### 导入 Eclipse 工程至 IDEA 后处理方式 对于从 Eclipse 移植过来的工程来说,可能存在某些配置差异导致 IDE 不会自动编译资源文件夹下的内容。此时建议重新整理模块间的相互关系,必要时可考虑清理缓存重建索引或是通过插件辅助完成迁移工作[^4]。 ```xml <!-- pom.xml --> <build> <resources> <!-- 显式指定资源位置 --> <resource> <directory>src/main/resources</directory> <includes> <include>*.*</include> </includes> </resource> </resources> </build> ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

鱼月半

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值