Maven - 如何为hibernate添加所有必需的依赖项?

sta*_*low 15 java hibernate maven

我从Hibernate网站下载了zip文件,我们有一个包含所有必需jar的文件夹.

但是我想和Maven一起做这件事.我是否需要检查哪个是这个Hibernate版本所需的库并在其中手动添加pom.xml

有没有办法只添加hibernate和maven来添加所有必需的库本身?

Tun*_*aki 15

如果要将JPA与Hibernate一起使用,则只需要一个Maven依赖项.请参阅下载页面:

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-entitymanager</artifactId>
    <version>5.0.2.Final</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

此依赖项将所有必需的其他工件作为传递依赖项(如JPA API,Hibernate Core和许多其他工具).

这是Maven的力量.您不需要手动向类路径添加任何内容,也不需要自己确定应添加哪些jar.一个Maven依赖项将声明为传递依赖项所需的一切.

  • 这是不推荐的,更好地使用hibernate-core而不是https://mvnrepository.com/artifact/org.hibernate/hibernate-entitymanager (4认同)

小智 6

<dependency>
  <groupId>org.hibernate</groupId>
  <artifactId>hibernate-core</artifactId>
  <version>5.0.2.Final</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

红色箭头


Abd*_*hak 5

使用pom.xml指定依赖项时,它不会像您期望的那样包含在依赖项库中(jar文件).这是我用来包含的基本hibernate工件id的列表:

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-core</artifactId>
    <version>${hibernate.version}</version>
</dependency>
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-validator</artifactId>
    <version>${hibernate.version}</version>
</dependency>
<dependency>
    <groupId>org.hibernate.common</groupId>
    <artifactId>hibernate-commons-annotations</artifactId>
    <version>${hibernate.version}</version>
    <classifier>tests</classifier>
</dependency>
<dependency>
    <groupId>org.hibernate.javax.persistence</groupId>
    <artifactId>hibernate-jpa-2.0-api</artifactId>
    <version>1.0.1.Final</version>
</dependency>
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-entitymanager</artifactId>
    <version>${hibernate.version}</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

用所需版本替换$ {hibernate.version}或使用此标识符定义属性.