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

如何升级maven-core至3.8.4修复Black Duck高危安全漏洞

问题解决方案

核心原因说明

maven-core 2.0.9 不属于你的应用业务依赖,是你当前使用的旧版本Maven插件自身依赖引入的,或是你本地/CI环境安装的Maven运行时版本过低导致的。

具体操作步骤

  • 第一步:先定位旧版本maven-core的来源
    执行以下命令查看所有插件的依赖树,确认是哪个插件引入了低版本maven-core:
    mvn dependency:resolve-plugins | grep maven-core
  • 第二步:升级pom中现有Maven插件到最新稳定版
    你当前pom里的几个核心Maven插件版本都过老,直接修改版本号即可:
    1. 把properties节点下的maven-compiler-plugin.version值从3.6.1改为3.12.1(该版本兼容JDK8,依赖maven-core 3.x系列)
    2. 把maven-shade-plugin的版本从3.2.0改为3.5.1
    3. 把maven-enforcer-plugin的版本从3.0.0-M3改为3.4.1(里程碑版本本身就不建议生产使用)
  • 第三步:如果升级插件后仍存在低版本maven-core,手动给插件指定高版本依赖
    比如确认是maven-shade-plugin引入的旧版本,就给插件显式添加maven-core依赖,示例如下:
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-shade-plugin</artifactId>
        <version>3.5.1</version>
        <dependencies>
            <dependency>
                <groupId>org.apache.maven</groupId>
                <artifactId>maven-core</artifactId>
                <version>3.8.4</version>
            </dependency>
        </dependencies>
        <!-- 原有executions、configuration等配置保持不变 -->
    </plugin>
    
  • 第四步:升级本地/CI环境的Maven运行时版本
    如果你当前构建用的Maven本身就是2.x版本,直接将运行时Maven升级到3.8.4或更高的稳定版,Maven运行时自带的maven-core版本优先级高于插件依赖的版本,这一步能从根本解决问题。

验证方式

修改完成后重新执行构建,查看构建日志下载的maven-core版本是否为3.8.4及以上,再用Black Duck扫描即可消除该高危漏洞告警。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 22:06:06