我正在尝试使用JTDS驱动程序从我的应用程序使用Windows身份验证连接Sql Server数据库但是我收到了以下错误
SSO失败:本机SSPI库没有 加载。检查java.library.path 系统属性。
以下是我试图解决的情况,但仍然缺少某些东西..
我很困惑为什么这不适用于Sql Server 2008 R2和Denali。
答案 0 :(得分:14)
尝试将ntlmauth.dll
文件放在Java运行时环境的bin
文件夹中(例如C:\Program Files\Java\jre7\bin
)。
确保将DLL的“位数”(32位或64位)与JVM位数相匹配。
我使用SQL Server Express 2008 R2遇到了同样的问题,而MSDN SQL Server Forum Article推荐了这个适用于我的解决方案。
答案 1 :(得分:4)
除了直接将其放入JRE之外,您还可以指定java.library.path
:
-Djava.library.path=C:\jtds-1.3.1-dist\x64\SSO
上面的目录将包含ntlmauth.dll
文件
答案 2 :(得分:0)
除了DeChrist的回复,我还必须在bin
的{{1}}文件夹中添加相同的dll文件。在那种情况下,它对我有用。