oracle sql developer连接错误

时间:2014-07-16 23:48:38

标签: java oracle jdbc

我无法使用SQL Developer获得与Oracle WebLogic 12c的连接。这是我点击连接时出现的错误:

An error was encountered performing the requested operation:

/usr/lib/java/libocijdbc11.dylib: dlopen(/usr/lib/java/libocijdbc11.dylib, 1): Library not loaded: /ade/b/2475221476/oracle/rdbms/lib/libclntsh.dylib.11.1
  Referenced from: /usr/lib/java/libocijdbc11.dylib
  Reason: image not found

Vendor code 0

当我在SQL Developer的Settings中单击Test时,我得到以下日志:

Testing the Instant Client located at /usr/lib/java
Testing client directory ... OK
Testing loading Oracle JDBC driver ... OK
Testing checking Oracle JDBC driver version ... OK
  Driver version: 11.2.0.3.0
Testing testing native OCI library load ... Failed:
  Error loading the native OCI library
  The native OCI driver could not be loaded. The system propertyjava.library.path
  contains the entries from the environment variable DYLD_LIBRARY_PATH.
  Check it to verify that the expected native library
  directory /usr/lib/java is present and precedes any other client installations.
  java.library.path = /Users/gasim/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:.

以下是我的设置大纲:

  • 操作系统:OSX Mavericks(具体为10.9.4)
  • Java SE Runtime版本:" 1.8.0" (build" 1.8.0_11-b12")
  • Oracle Instant位于/ usr / lib / java下。该目录在SQL Developer中设置(通过数据库>高级)
  • Oracle服务器启动并运行默认参数(localhost:7001),我可以访问Web管理控制台。
  • Oracle Instant Client版本:11.2.0.4.0
  • java.library.path = / Users / gasim / Library / Java / Extensions:/ Library / Java / Extensions:/ Network / Library / Java / Extensions:/ System / Library / Java / Extensions:/ usr / lib /的java:

/usr/lib/java的目录列表:

BASIC_README
adrci
genezi
libclntsh.dylib.11.1
libnnz11.dylib
libocci.dylib.11.1
libociei.dylib
libocijdbc11.dylib
ojdbc5.jar
ojdbc6.jar
uidrvci
xstreams.jar

问题是,{/ 1}}确实存在于/ usr / lib / java中,该目录位于java的库路径中。我只是没有得到它。我在这里错过了什么吗?我还可以尝试解决这个问题或至少进行更深入的调试?

1 个答案:

答案 0 :(得分:0)

我会告诉你我是如何解决的,最后......

我正在运行OSX 10.9.4,通过brew安装了jboss 7.1.1.Final,以及一个env变量JBOSS_HOME=/usr/local/opt/jboss-as/libexec

我在ojdbc.jar版本11.2.0.3中已经有$JBOSS_HOME/modules/com/oracle/main,所以我下载了Instant Client版本11.2.0.3。

我评论了任何使用instantclient库填充java.library.path的JAVA_OPTS,如下所示:

#JAVA_OPTS="$JAVA_OPTS -Djava.library.path=$JBOSS_HOME/instantclient_11_2"

为了感到舒服,我在instantclient_11_2内复制了$JBOSS_HOME

这只是一个问题:

export DYLD_LIBRARY_PATH=$JBOSS_HOME/instantclient_11_2
$JBOSS_HOME/bin/standalone.sh

它现在有效。现在我有另一个问题需要解决:

Native Library /usr/local/Cellar/jboss-as/7.1.1.Final/libexec/instantclient_11_2/libocijdbc11.dylib already loaded in another classloader