我有一个使用Hibernate访问SQL数据的eclipse(indigo)项目。集成安全性的Hibernate工具和SQL服务器
我已经设置了几个类并使用注释来手动映射到表。我已将驱动程序jar文件(sqljdbc4.jar)添加到构建路径,并在驱动程序jar文件(为了支持集成安全性)下输入了包含_sqljdbc_auth.dll_作为“本地库位置”的文件夹的路径。
我可以访问使用JDBC连接到我的SQL Server 2012的数据,它使用集成的安全性,并且我在中定义了hibernate.cfg.xml。
下一步,我想自动从剩余的SQL表生成类。所以我从JBOSS站点安装了Hibernate工具,并试图通过必要的步骤进行操作:我已经根据我的hibernate配置文件创建了一个控制台配置。现在在我的项目的Hibernate透视图中,我看到三个项目“配置”,“会话工厂”和“数据库”。在“配置”的属性中,我看到了我的连接URL和其他设置。
然而,当我点击“数据库”我收到归结为Caused by: java.lang.UnsatisfiedLinkError: no sqljdbc_auth in java.library.path
- 似乎工具忽略项目设置错误
org.hibernate.exception.JDBCConnectionException: Getting database metadata
- 它拿起罐子,而不是路径的dll和 - 我看不出有什么办法如何将文件夹的dll添加到的java.library.path
我试着使用java.library.path
使用设置文件并在控制台配置中引用此文件。这似乎是“配置”项目中的一半工作,现在我可以看到java.library.path
中包含的文件夹。但是,当我尝试点击“数据库”或配置代码生成配置时,它不会改变任何内容 - 仍然为no sqljdbc_auth in java.library.path
错误。
目前为止我发现的唯一解决方法是将我的dll放入默认显示的任何文件夹中,位于java.library.path。然后我可以配置“代码生成配置”并创建类。然而,默认路径中的64位dll被加载并导致冲突,例如当我需要来自另一个应用程序的32位版本时,所以我宁愿按照需要正确执行并参考。
也许有可能加入控制台配置下的Classpath选项卡的路径,但是这一切看起来它说什么 - “类路径”,并说将我的文件夹,它不会改变任何东西。
我想知道如何为Hibernate工具正确配置java.library.path。有任何想法吗?可能吗?