【发布时间】:2020-08-03 12:56:56
【问题描述】:
我有一个可用的 Oracle 钱包。我正在尝试在 IntelliJ IDEA(和/或 DataGrip)中配置一个使用 TNS 连接类型的数据源。在General 选项卡下,我用Oracle Wallet 的位置填充了TNSADMIN 字段(仅包含文件:cwallet.sso、ewallet.p12、sqlnet.ora 和tnsnames.ora...没有别的),TNS name 带有实际的数据源名称。
有一个环境变量
WALLET_HOME也指向确切的位置。
此外,我还修改了(在 Advanced 选项卡下)键 oracle.net.tns_admin 和 oracle.net.wallet_location 的值分别为:${WALLET_HOME} 和 (SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=${WALLET_HOME})))。
这就是我在应用程序中连接到 Oracle 数据库所要做的。
看起来它可能有效,但我收到了以下错误消息:[99999][17167] PKI classes not found. To use 'connect /' functionality, oraclepki.jar must be in the classpath: java.lang.NoClassDefFoundError: oracle/security/pki/OracleWallet.
但是我这辈子找不到在那个屏幕上增加 Java 类路径的地方。我不能提供-classpath 选项作为VM options(在Advanced 选项卡下)的一部分,因为它会覆盖它。
使用此设置的人可以在这里解释一下吗?
【问题讨论】:
-
您的 Oracle 版本是多少?文件可以直接添加到驱动程序属性中的驱动程序文件部分。
-
你是对的!在
Data Sources and Drivers窗口中有一个Drivers部分,您可以在其中添加更多文件和/或子目录。对我来说有效的是添加oraclepki.jar文件(位于../oracle12c2_client_64/product/12.2.0/client_1/jlib/oraclepki.jar)。如果您将评论添加为答案,我会接受。
标签: oracle intellij-idea datagrip oracle-wallet