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

AquaSec漏洞问题:无法在pom.xml中排除指定依赖库

问题原因与解决方案

核心问题

你配置的Maven依赖排除无效,是因为ehcache-2.10.9.2.jar本身内置打包了jackson-databind 2.11.1的类文件,而非通过Maven传递依赖引入该版本。Maven的<exclusion>仅能管理依赖树中的传递依赖,无法移除已打包在第三方jar内部的类。

验证方法

执行以下命令确认ehcache jar中是否包含jackson类:

jar tf /path/to/ehcache-2.10.9.2.jar | grep com/fasterxml/jackson

如果输出包含com/fasterxml/jackson/databind相关路径,即可证明是内置类导致的问题。

解决步骤

  1. 升级Ehcache版本(优先推荐)
    查找Ehcache 2.10.x系列的后续维护版本,或直接升级到Ehcache 3.x版本(注意兼容性测试)。新版本通常会将jackson改为传递依赖而非内置打包,这样Maven就能通过依赖管理自动控制jackson-databind的版本,同时修复内置类的漏洞问题。

  2. 手动清理Ehcache jar中的内置类(临时方案)
    如果无法升级Ehcache,可以使用jar工具移除其中的jackson类:

    # 解压ehcache jar
    unzip ehcache-2.10.9.2.jar -d temp-ehcache
    # 删除内置的jackson类
    rm -rf temp-ehcache/com/fasterxml/jackson
    # 重新打包jar
    jar cf ehcache-cleaned.jar -C temp-ehcache .
    

    之后将清理后的jar替换项目中的原ehcache依赖,同时确保项目依赖的jackson-databind 2.12.7.1正常引入。

  3. 确认类加载顺序(辅助验证)
    检查Tomcat的类加载顺序,确保WEB-INF/lib下的jackson-databind-2.12.7.1.jar优先于ehcache jar被加载。不过这种方式可靠性较低,因为不同容器的类加载策略可能存在差异,优先推荐前两种方案。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 21:05:14