在JAR中找不到sqljdbc_auth.dll。 (在IntelliJ下)

时间:2016-07-27 14:21:57

标签: java intellij-idea jetbrains-ide sqljdbc java.library.path

我无法解决这个问题:

Exception in thread "main" java.lang.RuntimeException: java.io.FileNotFoundException: File /x64/sqljdbc_auth.dll was not found inside JAR.
at com.intellij.execution.rmi.RemoteServer.setupDomainAuth(RemoteServer.java:131)
at com.intellij.execution.rmi.RemoteServer.start(RemoteServer.java:55)
at com.intellij.database.remote.RemoteJdbcServer.main(RemoteJdbcServer.java:15)
Caused by: java.io.FileNotFoundException: File /x64/sqljdbc_auth.dll was not found inside JAR.
    at com.intellij.execution.rmi.RemoteServer.extractLibraryFromJar(RemoteServer.java:171)
    at com.intellij.execution.rmi.RemoteServer.setupDomainAuth(RemoteServer.java:127)
    ... 2 more

我已将sqljdbc_auth.dll复制到C:\Windows\System32但不起作用。

2 个答案:

答案 0 :(得分:2)

如果您已将sqljdbc_auth.dll库放在系统路径中(C:\Windows\System32将是),那么您应该能够使用集成安全性使用jtds连接到MSSQL数据库或Microsoft JDBC驱动程序。

对我来说,关键是离开"使用Windows域身份验证"框未选中,但随后在高级标签中,切换" integratedSecurity "属性从false到 true

我正在运行IntelliJ 14.1.6

答案 1 :(得分:0)

如果从IntelliJ IDEA中下载Microsoft SQL Server驱动程序,您将看到他们已将x86 / sqljdbc_auth.dll和x64 / sqljdbc_auth.dll包装在jar文件中,然后将此jar添加到类路径中。 如果您处于脱机状态,请使用jar -cvf sqljdbc_auth.jar x*将文件夹包装到jar中,然后手动将其添加到类路径中。