【问题标题】:iText 2.1.7 requires Bouncy Castle 1.38, can I use Bouncy Castle 1.47 instead?iText 2.1.7 需要 Bouncy Castle 1.38,我可以使用 Bouncy Castle 1.47 代替吗?
【发布时间】:2017-07-11 17:40:12
【问题描述】:

iText 2.1.7 需要 Bouncy Castle 1.38,但我有 Bouncy Castle 1.47 来支持其他新库。

我不想放不同的版本,我可以只使用 Bouncy Castle 1.47 和 iText 2.1.7 吗?

【问题讨论】:

  • 您是否使用任何与安全相关的 iText 功能?如果不这样做,请考虑 Bouncy Castle 依赖项可选。
  • 可能有人会问为什么要使用 8 年前的 iText that can't be used in a commercial context 版本?这听起来很奇怪。

标签: itext bouncycastle


【解决方案1】:

我认为您不能,因为在 Bouncy Castle 版本 >= 1.47 中,API 发生了很多变化(请查看 this link)。

最显着的更改是名称更改的类和方法 - 检查“ASN.1 Changes” " 上面链接中的部分。

其中大部分是“基础”类和接口,例如 ASN1ObjectASN1Encodable,因此更改版本可能会使 iText 停止工作(除非您找到与 Bouncy Castle >= 1.47 兼容的版本)。


但这只是我的猜测,基于 API 中所做的更改(以及我自己在迁移到较新的 Bouncy Castle 版本时的经验 - 尽管我没有使用 iText)。无论如何,值得一试,看看会发生什么。

【讨论】:

  • 查看我的 Stack Overflow 个人资料以了解我的隶属关系。我可以确认这个答案是 100% 正确的。但是,对于 OP,并非所有希望都消失了:iText 5 和 iText 7 依赖于 BouncyCastle 1.49,您可以在 GitHub 存储库中自行检查。我们在 iText 7 积压工作中还有一项任务是将 BouncyCastle 依赖项升级到最新的依赖项,我们甚至从 BouncyCastle 开发人员那里获得了对我们的存储库执行拉取请求的提议。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-09
相关资源
最近更新 更多