springboot静态资源映射不生效问题

最近有个同事问我,静态资源映射不生效的问题,很正常我想不就是配置下资源路径就可以了吗?类似配置如下代码

java 复制代码
@Configuration
public class CorsConfig implements WebMvcConfigurer {


    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
    
		//一旦自定义配置静态资源路径,那么springboot默认的那四个静态资源路径规则就会失效
        registry.addResourceHandler("/images/**")
                .addResourceLocations("classpath:/static/","classpath:/static/images/","classpath:/static/images/movie/2023/07/08/","classpath:/static/images/cinema/2023/07/03/","classpath:/static/images/user/2023/07/08/")
                .setCachePeriod(100)
                .resourceChain(true)
                .addResolver(new PathResourceResolver());

    }
}

但通过敲击浏览器 127.0.0.1:port/images/1.jpg,却始终给我404。通过查阅资料和查看文件路径结构,发现我忽略了maven 中对于静态资源的打包方式,

我的目录结果

但是最终在项目的target/class目录下 却没有将static目录,那么问题很明显,尽管我配置了静态资源映射规则,但是实际打包的时候,却没有对应将资源文件打包进去!那么如何将文件打包进去呢?那就是maven中的配置

xml 复制代码
    <build>
        <defaultGoal>compile</defaultGoal>
        <!--定义资源路径-->
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
                <includes>
                    <include>*/**</include>
                </includes>
                <filtering>false</filtering>
            </resource>
        </resources>
    </build>

相关描述在此 maven文档说明

运行boot项目 ,最终在本地的target目录下的生成的路径如下

![(https://i-blog.csdnimg.cn/direct/aa3f6a6a894746c596c715efe03824c3.png)

重启项目 图片能正确访问到了

相关推荐
计算机毕业设计木哥几秒前
计算机毕业设计选题推荐:基于SpringBoot和Vue的爱心公益网站
java·开发语言·vue.js·spring boot·后端·课程设计
ANnianStriver2 分钟前
智谱大模型实现文生视频案例
java·aigc
普通网友13 分钟前
KUD#73019
java·php·程序优化
IT_陈寒16 分钟前
Redis 性能翻倍的 5 个隐藏技巧,99% 的开发者都不知道第3点!
前端·人工智能·后端
JaguarJack17 分钟前
PHP 桌面端框架NativePHP for Desktop v2 发布!
后端·php·laravel
番茄Salad17 分钟前
自定义Spring Boot Starter项目并且在其他项目中通过pom引入使用
java·spring boot
程序员三明治29 分钟前
详解Redis锁误删、原子性难题及Redisson加锁底层原理、WatchDog续约机制
java·数据库·redis·分布式锁·redisson·watchdog·看门狗
自由的疯39 分钟前
Java 怎么学习Kubernetes
java·后端·架构
自由的疯39 分钟前
Java kubernetes
java·后端·架构
普通网友2 小时前
IZT#73193
java·php·程序优化