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

Maven自动下载未声明的JDK1.4版BouncyCastle依赖求助

解决JHipster项目中Maven持续下载旧版BouncyCastle的问题

看起来你已经做了不少基础操作,但Maven还是顽固地拉取JDK 1.4版的BouncyCastle——十有八九是间接依赖在搞鬼,或者Maven的依赖管理规则在起作用。我给你一步步拆解解决方法:


1. 先揪出是谁在引入旧版依赖

你以为项目没依赖BouncyCastle,但很可能是某个第三方库悄悄把它带进来了。用Maven的依赖树命令定位根源:

./mvnw dependency:tree -Dincludes=org.bouncycastle

这个命令会输出所有和BouncyCastle相关的依赖路径,比如你可能会看到类似这样的结果:

[INFO] com.yourcompany:your-app:jar:1.0.0-SNAPSHOT
[INFO] - some.thirdparty:library:jar:2.0.0:compile
[INFO] - org.bouncycastle:bcprov-jdk14:jar:1.46:compile

这样你就知道是哪个库在拉旧版本了。

2. 排除旧版依赖,显式声明新版

找到那个引入旧版的依赖后,在你的pom.xml里给它加上排除规则,同时显式添加JDK 1.5版本的BouncyCastle依赖:

第一步:排除旧版

<dependency>
    <groupId>some.thirdparty</groupId> <!-- 刚才找到的第三方库groupId -->
    <artifactId>library</artifactId> <!-- 对应的artifactId -->
    <version>2.0.0</version>
    <exclusions>
        <exclusion>
            <groupId>org.bouncycastle</groupId>
            <artifactId>bcprov-jdk14</artifactId> <!-- 旧版的artifactId -->
        </exclusion>
    </exclusions>
</dependency>

第二步:显式添加JDK 1.5+版本

注意JDK 1.5及以上版本的BouncyCastle artifactId是bcprov-jdk15on,别写错了:

<dependency>
    <groupId>org.bouncycastle</groupId>
    <artifactId>bcprov-jdk15on</artifactId>
    <version>你想要的版本号</version> <!-- 比如1.70 -->
</dependency>

3. 强制清理Maven缓存,重新构建

有时候本地缓存的依赖信息会有残留,用以下命令强制更新:

./mvnw clean install -U

-U参数会让Maven强制检查所有依赖的更新,彻底清理旧的缓存文件重新下载。

4. 检查JHipster的依赖管理配置

JHipster项目通常会在<dependencyManagement>节点里统一管理所有依赖的版本,你需要确认这里有没有锁定BouncyCastle的旧版本:
打开pom.xml,找到<dependencyManagement>,搜索org.bouncycastle,如果有旧版本的配置,把它改成你要的1.5+版本号。

5. 清理IDE缓存(如果用IDE开发)

如果你是在IntelliJ、Eclipse这类IDE里操作,IDE可能会缓存旧的依赖信息,导致你改了pom但还是看到旧版本:

  • IntelliJ:点击File -> Invalidate Caches...,选择"Invalidate and Restart"
  • Eclipse:点击Project -> Clean,然后右键项目选择Maven -> Update Project

6. 检查Maven全局settings

最后,检查用户目录下的.m2/settings.xml,看看有没有配置镜像或者依赖覆盖规则,强制指定了BouncyCastle的旧版本。如果有,修改或删除对应的配置。

按照这些步骤来,应该就能彻底摆脱旧版的BouncyCastle了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.14 06:57:37