springboot打成jar包无法访问jsp或者html,404错误

本文解决了一个常见问题:如何在SpringBoot项目中正确打包并部署前端页面资源,确保无论是IDE还是jar包方式运行都能正常访问。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

0:虽然不推荐在springboot项目中包含前端页面,但根据实际情况,也是有可能将前端和后台写在同一个boot项目中的

1.在idea或者eclipse中运行正常运行访问,打成jar包运行报404

2.分析:ide中运行是正常的,打包之后访问是404,尝试把jar包解压开,发现里面真的没有页面文件,所以是打包进去的时候没有将页面打进去

3.原因:查看springboot对于资源映射的源码(ResourceProperties.class):"/**" 访问当前项目的任何资源,都去(静态资源的文件夹)找映射

"classpath:/META‐INF/resources/",

"classpath:/resources/",

"classpath:/static/",

"classpath:/public/"

"/":当前项目的根路径

4.解决:将资页面在打包的时候打入资源文件

<resources>

    <resource>

        <directory>/src/main/webapp</directory>

            <!--注意此次必须要放在此目录下才能被访问到-->

        <targetPath>META-INF/resources</targetPath>

        <includes>

            <include>**/**</include>

        </includes>

    </resource>

    <resource>

        <directory>/src/main/resources</directory>

        <includes>

            <include>**/**</include>

        </includes>

    </resource>

</resources>

[5].重新打包访问,完美解决

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值