java.library.path中没有ocijdbc12
我正在尝试使用OCI驱动程序通过java程序与oracle建立连接 以下是配置java.library.path中没有ocijdbc12,java,oracle,dll,oracle11g,Java,Oracle,Dll,Oracle11g,我正在尝试使用OCI驱动程序通过java程序与oracle建立连接 以下是配置 Windows7,32位 JDK1.7 Oracle客户端11g R2 ojdbc7.jar在我的独立应用程序的类路径中。 但我有以下例外: Exception in thread 'main' java.lang.UnsatisfiedLinkError: no ocijdbc12 in java.library.path 我尝试使用瘦驱动程序连接。对于精简驱动程序,连接成功。 我在谷歌上搜索了一下,但没有找
- Windows7,32位
- JDK1.7
- Oracle客户端11g R2
ojdbc7.jar
在我的独立应用程序的类路径中。
但我有以下例外:
Exception in thread 'main' java.lang.UnsatisfiedLinkError: no ocijdbc12 in java.library.path
我尝试使用瘦驱动程序连接。对于精简驱动程序,连接成功。
我在谷歌上搜索了一下,但没有找到解决办法
请帮我解决这个问题。要使用oracle OCI驱动程序,您的java库路径中应该有相关的DLL
确保引用正确的版本,包括32/64位和版本号。我也有同样的问题,只是我的
*.ora
文件的外部文件夹不再存在,我通过(菜单导航)再次指向它:
- 工具
- 偏好
- 数据库
- 先进的
- tnsnames目录
- 先进的
- 数据库
- 偏好
它解决了它已通过设置Oracle客户端解决此问题 工具->首选项->数据库->高级->使用Oracle客户端->(选择Oracle客户端的路径)
例如:即时客户端:
文件:/C:/Oracle/product/11.2.0/Client_3/
对于JDeveloper 12c,如果遇到此问题,请设置一个引用ojdbc jar的环境变量”
-J-Djdbc.library=\ojdbc6.jar”
我也遇到过类似的情况
解决方案是输入connection属性,并从此级别重新连接
我要补充的是,在安装oracle express之后出现了问题,在此期间发生了一个错误,安装未完成这对我来说很有效:
C:\Users\username\AppData\Roaming\JDeveloper\System
文件夹错误消息可能会误导您,尤其是当您的应用程序配置正确(所有JAR都已就位等)时 检查
tnsnames.ora
文件是否包含您尝试连接到的数据库的定义。如果没有,请添加它并重新启动应用程序
--编辑--
如果有定义,但看不到任何TNSE,请检查语法是否正确。一个括号太多,SQL开发人员会默默地忽略整个文件…请提供您的代码。请看看您为什么使用JNI?有什么东西是你从JDBC得不到的吗?Class.forName(“oracle.JDBC.driver.OracleDriver”);试试(Connection con=DriverManager.getConnection(“jdbc:oracle:oci:@hostname:port_no:xe”,“USERNAME”,“PASSWORD”))@FlyingGuy如果我使用的是jdbc“Thin”,那么对于远程oracle访问,我需要防火墙权限,而使用“oci”可能不需要防火墙权限。。
-J-Djdbc.library=<PATH>\ojdbc6.jar"