You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行mvn clean install遇MavenResourcesFiltering绑定异常,Spring Boot项目无法运行

问题排查与解决方案

问题根源分析

这个No implementation for org.apache.maven.shared.filtering.MavenResourcesFiltering was bound错误主要由以下几个冲突和配置问题导致:

  1. Java版本配置矛盾:pom中java.version指定为19,但maven-compiler-plugin强制设置source/target为1.8,Spring Boot 3.0要求Java 17+,版本不匹配导致插件执行时类加载异常。
  2. Jakarta EE与Java EE依赖冲突:Spring Boot 3.0基于Jakarta EE 9规范,但你引入了旧的javax.servlet:servlet-api:2.5和javax.xml.bind系列依赖,与项目中的Jakarta版本依赖(如jakarta.servlet-api:6.0.0)冲突,干扰了Maven插件的类查找。
  3. 冗余依赖导致的依赖混乱:手动引入了spring-context、spring-core等已被Spring Boot Starter包含的依赖,可能引发依赖版本不一致,间接影响Maven插件的正常运行。

解决方案

1. 统一Java版本配置

移除手动配置的maven-compiler-plugin,Spring Boot Parent会根据java.version自动配置编译器版本:

<!-- 移除以下插件配置 -->
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
        <source>1.8</source>
        <target>1.8</target>
    </configuration>
</plugin>

2. 清理冲突依赖

  • 移除旧的Java EE依赖:
    • javax.servlet:servlet-api:2.5
    • javax.xml.bind:jaxb-api、com.sun.xml.bind:jaxb-core、com.sun.xml.bind:jaxb-impl、javax.activation:activation
  • 若需要JAXB支持,替换为Jakarta版本的依赖:
<dependency>
    <groupId>jakarta.xml.bind</groupId>
    <artifactId>jakarta.xml.bind-api</artifactId>
</dependency>
<dependency>
    <groupId>org.glassfish.jaxb</groupId>
    <artifactId>jaxb-runtime</artifactId>
    <scope>runtime</scope>
</dependency>

3. 移除冗余依赖

移除已被Spring Boot Starter包含的依赖:

  • spring-context、spring-core(被spring-boot-starter-web等starter包含)
  • spring-security-core、spring-security-web、spring-security-config(被spring-boot-starter-security包含)

4. 强制刷新Maven依赖

执行以下命令清理并重新构建:

mvn clean install -U

内容的提问来源于stack exchange,提问作者Maxopp

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 03:45:53