3

在 pom.xml 中用于休眠:

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

没有版本。但是当我在 Eclipse 中添加到我的应用程序 pom 时,我收到该版本必须是的错误。为什么会有这种差异?谢谢。

4

4 回答 4

4

2.0 是支持的 JPA 的版本不是工件的版本

尝试

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

阿农

于 2012-05-03T07:56:59.293 回答
2

Maven 需要知道要下载/检查的版本。

添加一个version元素作为dependency.

于 2012-05-03T07:54:08.827 回答
1

您在 hibernate 的依赖项中看到的提取实际上有一个在父 pom 中定义的版本,在其 dependencyMgmt 部分中。这允许只在一个地方定义要使用的版本,并且该父 pom 的所有子级只需要指出他们想要的依赖项,它们就会自动获取父级中指定的版本。

在你的情况下添加一个<version>,或者在你的 pom.xml 中使用一个 dependencyMgmt 部分来指示你想要的 hibernate-jpa-2.0-api 的版本。

于 2012-05-03T07:58:43.210 回答
1

有两种方法可以解决这些问题:

- 插入自己的版本,以便 Maven 知道您需要什么依赖项(它要么在本地存储库中搜索它,要么从 maven 存储库下载,或者你可以给它一个从哪里下载它的链接)

-添加一个使用您正在调用的工件的父级,然后您不需要该版本(它需要父版本)

于 2012-05-03T08:00:58.760 回答