升级Bouncy Castle至1.77后org.bouncycastle.asn1.eac包缺失求解决方案
Bouncy Castle 1.77版本中org.bouncycastle.asn1.eac包的替代方案
在Bouncy Castle 1.70及以后版本中,org.bouncycastle.asn1.eac所属的EAC(电子认证芯片)相关ASN.1代码,从核心的bcprov系列包拆分到了独立的bcpkix包中,这就是升级后找不到该包的原因。
解决步骤:
- 在Maven项目的pom.xml中添加
bcpkix-jdk18on依赖,版本与bcprov-jdk18on保持一致:
<dependency> <groupId>org.bouncycastle</groupId> <artifactId>bcpkix-jdk18on</artifactId> <version>1.77</version> </dependency>
- 代码中的导入语句无需修改,
org.bouncycastle.asn1.eac下的所有类(例如EACObjectIdentifiers、CertificateHolderAuthorization等)现在都包含在新增的bcpkix-jdk18on依赖中,重新编译项目即可解决报错。
额外说明:Bouncy Castle从1.70版本开始对模块进行拆分,将PKIX、EAC等扩展功能从核心prov包中分离,升级时需要根据使用的功能按需引入对应的拆分包。
内容的提问来源于stack exchange,提问作者Sandeep K Suman
相关产品推荐
相关产品推荐

