将Java连接到SQL Anywhere数据库时出错 [英] Error connecting Java to SQL Anywhere database

查看:204
本文介绍了将Java连接到SQL Anywhere数据库时出错的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试将java程序连接到数据库。我在构建路径中有sajdbc4.jar并且之前有效,但是现在我在尝试建立连接时遇到此错误:

I am trying to connect a java program to a database. I have sajdbc4.jar in the build path and it worked before, but now I keep getting this error when I try to make the connection:


线程main中的异常java.lang.UnsatisfiedLinkError:java.library.path中没有dbjdbc12 $ java.lang.ClassLoader.loadLibrary中的
(未知来源)
at java.lang.Runtime.loadLibrary0(未知来源)
at java.lang.System.loadLibrary(Unknown Source)
at sybase.jdbc4.sqlanywhere.IDriver.try_load(IDriver.java:455)
at sybase.jdbc4.sqlanywhere .IDriver。(IDriver.java:396)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect .DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at java.util .ServiceL oader $ LazyIterator.nextService(未知来源)
at java.util.ServiceLoader $ LazyIterator.next(Unknown Source)
at java.util.ServiceLoader $ 1.next(Unknown Source)
at java .sql.DriverManager $ 2.run(未知来源)
at java.sql.DriverManager $ 2.run(未知来源)
at java.security.AccessController.doPrivileged(Native Method)
at java .sql.DriverManager.loadInitialDrivers(未知来源)
at java.sql.DriverManager。(未知来源)
at Main.main(Main.java:26)

Exception in thread "main" java.lang.UnsatisfiedLinkError: no dbjdbc12 in java.library.path at java.lang.ClassLoader.loadLibrary(Unknown Source) at java.lang.Runtime.loadLibrary0(Unknown Source) at java.lang.System.loadLibrary(Unknown Source) at sybase.jdbc4.sqlanywhere.IDriver.try_load(IDriver.java:455) at sybase.jdbc4.sqlanywhere.IDriver.(IDriver.java:396) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Unknown Source) at java.lang.Class.newInstance(Unknown Source) at java.util.ServiceLoader$LazyIterator.nextService(Unknown Source) at java.util.ServiceLoader$LazyIterator.next(Unknown Source) at java.util.ServiceLoader$1.next(Unknown Source) at java.sql.DriverManager$2.run(Unknown Source) at java.sql.DriverManager$2.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.sql.DriverManager.loadInitialDrivers(Unknown Source) at java.sql.DriverManager.(Unknown Source) at Main.main(Main.java:26)

有人可以帮帮我吗?在网上找不到任何有关此问题的内容。

Can someome please help me? Can't find anything abount this issue online.

推荐答案

对于Windows,请在您的计算机中找到此文件:

For windows find this file in your computer:

dbjdbc12.dll

对于linux找到这个文件:

For linux find this file:

libdbjdbc12.so

使用命令行选项将此文件的位置放在java.library.path上:

Put the location of this file on the java.library.path either with a command line option:

java -Djava.library.path=DIRECTORYWITHDLL ...

或使用系统代码中的.setProperty:

or using System.setProperty in your code:

System.setProperty("java.library.path","DIRECTORYWITHDLL");

这篇关于将Java连接到SQL Anywhere数据库时出错的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆