驱动程序更新到ojdbc7.jar会给oracle / security / pki / OraclePKIProvider

时间:2015-05-19 06:18:34

标签: java oracle12c

我之前一直在使用ojdbc14.jar,现在想将其升级到ojdbc7.jar以支持oracle12c。

但是,连接服务器会给" oracle / security / pki / OraclePKIProvider"

带来错误。

如果我将oraclepki.jar添加到类路径服务器中,则可以正常启动而不会出现任何错误。

我想弄清楚在ojdbc7.jar中添加了什么特别的东西,它要求我添加oraclepki.jar,与ojdbc14.jar一样,它从未要求我将oraclepki添加到我的类路径中。

有没有人知道ojdbc7导致此错误的更改以及可以采取哪些措施来避免在类路径上添加oraclepki?

2 个答案:

答案 0 :(得分:3)

检查您的类路径并确保删除以下内容:(如果存在)

-XX:-UseSplitVerifier

答案 1 :(得分:0)

这是Oracle支持数据库中记录的issue。如果您有Oracle支持,可以在那里找到更多信息。如果不是......

正如Joseph Carroll所述,从命令行中删除-XX:-UseSplitVerifier Java参数可能会解决您的问题。 UseSplitVerifier参数基本上告诉Java使用较早的,不那么严格的字节码验证器(当从Java 6升级到Java 7时,它有时用于使旧的字节代码检测工具工作)。不幸的是,在将某些工具从Java 7升级到Java 8时,它会导致一些问题。您可能会做的其他事情包括(每个Oracle):

  1. 升级到java 7兼容的字节码检测工具。
  2. 或者,as 解决方法,在类路径中包含oraclepki_121020.jar。这是 在升级到兼容java 7的字节码的情况下有效的解决方法 仪表工具是不可能的。
  3. article讨论了为使用Java 7和Oracle添加-XX:-UseSplitVerifier的原因。这篇article讨论了如何在Java 8而不是–noverify中使用-XX:-UseSplitVerifier标记。