【问题标题】:Hibernate artifact id "hibernate-core" with version 4.3.5.Final and artifact id "hibernate" with version 3.2.3.gaHibernate artifact id "hibernate-core" with version 4.3.5.Final 和 artifact id "hibernate" with version 3.2.3.ga
【发布时间】:2014-05-24 21:32:21
【问题描述】:

我正在按照教程开始使用 Hibernate,有一个注释将 Hibernate artifact id 添加为

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate</artifactId>
    <version>3.2.3.ga</version>
</dependency>

还有很多其他的依赖,比如 dom4j、javax.transaction (JTA) 等等。

但最新的休眠版本是“4.3.5.Final”(从 hibernate.org 收集),并且给定的工件 id 是:

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-core</artifactId>
    <version>4.3.5.Final</version>
</dependency>

无需在我的示例的 pom.xml 中添加额外的依赖项

当我用教程的方式编译我的项目时,在我的 .m2 目录中创建了 org.hibernate,它包含了运行示例所需的一切。

我删除了 repo 中的所有内容并仅使用 hibenate-core(在 hibernate.org 上提供)进行编译,所有必要的东西都已下载,并且示例也成功运行。

我尝试在 .m2 中查看 hibernate-core 的 pom.xml,并注意到此处添加了 dom4j 和事务等依赖项。 (因此可能不需要添加示例的 pom.xml)。还注意到现在使用 Jboss.spec.javax 形式的 trasaction API。

我很困惑,正确的方法是什么? hibernate-core是最新的做事方式吗?与“休眠”神器有什么区别?为什么事务 API 实现之类的东西从 java.transaction to org.jboss.spec.javax.transaction 改变了?

我在哪里可以找到这些东西的详细信息?

【问题讨论】:

    标签: java spring hibernate maven jpa


    【解决方案1】:

    从 hibernate 4 开始,maven 工件被分成单独的模块而不是单个 jar。从 hibernate 4 开始推荐的方法是使用 hibernate-core 工件。请阅读手册1.1.1部分:http://docs.jboss.org/hibernate/orm/4.3/manual/en-US/html_single/#tutorial-firstapp-setup

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-18
      相关资源
      最近更新 更多