我需要包括hibernate.jar的所有Maven依赖项吗?

我需要包括hibernate.jar的所有Maven依赖项吗?,hibernate,maven,dependencies,pom.xml,Hibernate,Maven,Dependencies,Pom.xml,我有一个使用Hibernate的项目:Hibernate-core-3.6.7.Final.jar 在其POM中,我发现: <dependency> <groupId>org.hibernate.javax.persistence</groupId> <artifactId>hibernate-jpa-2.0-api</artifactId> </dependency> o

我有一个使用Hibernate的项目:Hibernate-core-3.6.7.Final.jar

在其POM中,我发现:

    <dependency>
        <groupId>org.hibernate.javax.persistence</groupId>
        <artifactId>hibernate-jpa-2.0-api</artifactId>
    </dependency>

org.hibernate.javax.persistence
hibernate-jpa-2.0-api

我应该在我的应用程序中包含所有依赖项,还是Maven本身就应该这样做?

Maven用于此。您应该为Eclipse安装m2插件(如果您在Eclipse上编码),然后右键单击您的项目->更新项目依赖项。

但是Maven用于此,这意味着当您在项目中添加依赖项时,Maven将下载LIB,并将它们添加到项目中正确的位置

Maven就是用来做这件事的。您应该为Eclipse安装m2插件(如果您在Eclipse上编码),然后右键单击您的项目->更新项目依赖项。

但是Maven用于此,这意味着当您在项目中添加依赖项时,Maven将下载LIB,并将它们添加到项目中正确的位置

您需要的所有依赖项都必须手动添加到pom.xml文件中。如果配置正确,maven将自动下载与您在其中添加的依赖项对应的所有库,它们将准备好在您的应用程序中使用。

您需要的所有依赖项,您必须手动添加到pom.xml文件中。如果配置正确,maven将自动下载与您在其中添加的依赖项对应的所有库,它们将准备在您的应用程序中使用。

如果您在
pom.xml
中指定一个
,不仅它的JAR将下载到您的本地存储库,但也会下载POM文件。Maven随后将在此类POM文件中查找信息,以找出它需要检索的其他库。这就是Maven的想法

因此,它依赖于公共存储库中存储的此类POM文件的准确性和完整性。如果此类POM文件中的依赖项未更新或为空,则必须在必要时在自己的
POM.xml
中显式提供依赖项

对于hibernate,
hibernate core
已经依赖于
hibernate-jpa-2.0-api
,这意味着如果在
pom.xml
中包含
hibernate core
,将下载
hibernate-jpa-2.0-api
。因此,
hibernate-jpa-2.0-api
是冗余的,可以删除

如果您想在hibernate中使用JPA接口,您可以在
中包含
hibernate entitymanager
,因为它取决于
hibernate核心,因此也将下载它

总之,我建议您只需在
中包含
hibernate entitymanager

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-entitymanager</artifactId>
    <version>3.6.7.Final</version>
</dependency>

org.hibernate
休眠实体管理器
3.6.7.最终版本
如果您在
pom.xml
中指定了一个
,不仅它的JAR会下载到本地存储库,还会下载一个pom文件。Maven随后将在此类POM文件中查找信息,以找出它需要检索的其他库。这就是Maven的想法

因此,它依赖于公共存储库中存储的此类POM文件的准确性和完整性。如果此类POM文件中的依赖项未更新或为空,则必须在必要时在自己的
POM.xml
中显式提供依赖项

对于hibernate,
hibernate core
已经依赖于
hibernate-jpa-2.0-api
,这意味着如果在
pom.xml
中包含
hibernate core
,将下载
hibernate-jpa-2.0-api
。因此,
hibernate-jpa-2.0-api
是冗余的,可以删除

如果您想在hibernate中使用JPA接口,您可以在
中包含
hibernate entitymanager
,因为它取决于
hibernate核心,因此也将下载它

总之,我建议您只需在
中包含
hibernate entitymanager

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-entitymanager</artifactId>
    <version>3.6.7.Final</version>
</dependency>

org.hibernate
休眠实体管理器
3.6.7.最终版本