JDBC中缺少dll

muf*_*fin 20 java sql authentication dll jdbc

我目前正在使用Java中的SQL.最近我收到了这个错误:

com.microsoft.sqlserver.jdbc.AuthenticationJNI <clinit>
WARNING: Failed to load the sqljdbc_auth.dll cause : no sqljdbc_auth in java.library.path
Run Code Online (Sandbox Code Playgroud)

当我integratedSecurity=true;在连接String中添加参数时会发生这种情况.错误消息清楚地表明缺少sqljdbc_auth.dll,所以我尝试将dll放在与保留sqljdbc4.jar相同的路径中.

但是,这不起作用,所以我想知道我实际上如何将这个dll添加到我的构建路径中?有没有特殊的方法呢?

Spr*_*ner 39

保持sqljdbc_auth.dll在你的Windows/system32文件夹,它将工作.从这个链接下载sqljdbc驱动程序解压缩它,你会发现sqljdbc_auth.dll.现在保留sqljdbc_auth.dll内部system32文件夹并运行你的程序


muf*_*fin 10

好吧,伙计们,我发现了!我真的不需要更改java.library.path而是更改sqljdbc.jar的"本机库位置"

这是我能找到的最佳答案:https: //stackoverflow.com/a/958074/2000342

它现在有效,感谢您的支持!


小智 5

为了轻松解决,请按照以下步骤操作:

  1. 转到:https : //docs.microsoft.com/zh-cn/sql/connect/jdbc/building-the-connection-url#Connectingintegrated
  2. 下载JDBC文件并解压缩到您的首选位置
  3. 打开与您的操作系统x64或x86匹配的auth文件夹
  4. 复制sqljdbc_auth.dll文件
  5. 粘贴在:C:\ Program Files \ Java \ jdk_version \ bin

重新启动eclipse或netbeans