Java 休眠工件id“;“休眠核心”;版本为4.3.5.Final,工件id为“;冬眠“;使用版本3.2.3.ga

Java 休眠工件id“;“休眠核心”;版本为4.3.5.Final,工件id为“;冬眠“;使用版本3.2.3.ga,java,spring,hibernate,maven,jpa,Java,Spring,Hibernate,Maven,Jpa,我是按照一个教程开始使用Hibernate的,这里有一个注释,将Hibernate工件id添加为 <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate</artifactId> <version>3.2.3.ga</version> </dependency> org.hibernate 冬眠

我是按照一个教程开始使用Hibernate的,这里有一个注释,将Hibernate工件id添加为

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

org.hibernate
冬眠
3.2.3.ga
还有许多其他依赖项,如dom4j、javax.transaction(JTA)等

但是最新的hibernate版本是“4.3.5.Final”(从hibernate.org收集),这里给出的工件id是:

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

org.hibernate
冬眠核心
4.3.5.最终版本
没有额外的依赖项添加到示例的pom.xml中

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

我删除了repo中的所有内容,并仅使用hibenate核心(在hibernate.org上给出)进行编译,所有必要的内容都已下载,样本也已成功运行

我试图在.m2中查看hibernate核心的
pom.xml
,并注意到这里添加了对dom4j和事务等内容的依赖关系。(因此可能不需要添加示例的pom.xml)。还注意到TrasactionAPI现在以Jboss.spec.javax的形式使用

我很困惑,正确的方法是什么?hibernate核心是最新的做事方式吗?“冬眠”工件有什么区别?为什么事务API实现之类的东西从
java.transaction更改为org.jboss.spec.javax.transaction


在哪里可以找到这些详细信息?

从hibernate 4开始,maven工件被分为单独的模块,而不是一个jar。从hibernate 4开始,推荐的方法是使用hibernate核心工件。请阅读手册第1.1.1节: