我正嘗試使用集成身份驗證連接到另一個盒子上的SQL Server 2008。我的環境包括64位Java 7,64位Eclipse和64位Windows 7.我使用的是Microsoft提供的JDBC驅動程序。一切工作正常與32位Java。但是,對於64位Java,我得到以下內容:嘗試使用64位Java連接到SQL Server 2008
「警告:未能加載sqljdbc_auth.dll原因:C:\ Program Files(x86)\ Microsoft JDBC驅動程序4.0 for SQL Server \ sqljdbc_4.0 \ enu \ auth \ x86 \ sqljdbc_auth.dll:無法在AMD 64位平臺上加載IA 32位.dll ...「
我發現http://msdn.microsoft.com/en-us/library/ms378428.aspx,但似乎沒有任何建議可行。具體來說,
我複製 「sqljdbc_4.0 \ ENU \權威性\ 64 \ sqljdbc_auth.dll」 到 「sqljdbc_4.0 \ ENU」,一個 「C:\ WINDOWS」 和「C:\ WINDOWS \ SYSTEM32" 。得到了同樣的錯誤。
我在Eclipse的VM參數中設置了「-Djava.library.path = C:\ Program Files(x86)\ Microsoft JDBC Driver 4.0 for SQL Server \ sqljdbc_4.0 \ enu \ auth \ x64」,然後我:
「錯誤:無法找到或加載主類文件」
任何想法?不知道爲什麼它使用32位sqljdbc_auth.dll? AFAIK,sql server 2008是64位的。
非常感謝!
感謝Thihara。通過指示類路徑解決了問題。有關詳細信息,請參閱http://stackoverflow.com/questions/957700/how-to-set-the-java-library-path-from-eclipse。 – user2159018 2013-04-04 15:30:57
好找...... – Thihara 2013-04-04 16:50:29