Java Maven中的依赖性问题
我知道Java Maven中的依赖性问题,java,eclipse,hibernate,maven,jpa,Java,Eclipse,Hibernate,Maven,Jpa,我知道孤儿删除属性存在于hibernate-jpa-2.1-api-1.0.0.Final.jar中,这就是我的项目中使用的库 我添加了Maven依赖项: 这里有什么问题,我可以做些什么来解决这个问题 编辑:这些是我的依赖项: 泽西岛 泽西服务器 ${jersey版本} 泽西岛 泽西json ${jersey版本} 朱尼特 朱尼特 4.8.2 测试 泽西岛 泽西岛客户 ${jersey版本} 测试 org.glassfish.org 万维网 10.0-build-20080430 测试 org
孤儿删除
属性存在于hibernate-jpa-2.1-api-1.0.0.Final.jar中,这就是我的项目中使用的库
我添加了Maven依赖项:
这里有什么问题,我可以做些什么来解决这个问题
编辑:这些是我的依赖项:
泽西岛
泽西服务器
${jersey版本}
泽西岛
泽西json
${jersey版本}
朱尼特
朱尼特
4.8.2
测试
泽西岛
泽西岛客户
${jersey版本}
测试
org.glassfish.org
万维网
10.0-build-20080430
测试
org.glassfish.embedded
gf嵌入式api
1.0-α-4
测试
javax.servlet
servlet api
2.5
假如
org.hibernate
冬眠核心
4.3.0.1最终版本
GlassFishWebAll依赖项也包含JPA包,并且它包含一个旧版本的JPA包(从2008-04-30,正如artefact的版本所示,所以可能是JPA1.0)
您可以在这里看到此依赖项中包含的包:.添加了hibernate-jpa-2.0-api-1.0.Final.jar
,并删除了引用库中javax.persistence
包中没有孤立删除()
方法的persistence.jar
。这就解决了错误
“注释类型的属性未定义
一家公司”
它也出现在hibernate-jpa-2.0中,即javaee6。您确定使用的是javax.persistence.OneToMany
?请添加错误堆栈跟踪以便更好地了解情况。@suresh这是一个编译错误。它就在那里。我们能看到您的其他依赖项吗?是的,importjavax.persistence.OneToMany
就在那里。我在项目中检查了Maven依赖树,它包含hibernate-jpa-2.1-api-1.0.0.Final.jar
。我还检查了类内OneToMany
。它包含cascade
,fetch
,mappedBy
,孤立删除
,以及targetEntity
。非常感谢!我删除了引用,它成功了。由于我使用eclipse构建项目并使用了jersey quickstart webapp
原型,因此它自动包含了该引用。由于这是我的第一个Maven项目,我不知道哪里出了问题。我对Maven人工制品的小小经验表明,几乎所有这些都是过时的,不应该使用。您最好仔细选择您的依赖项。我还建议使用learnig gradle而不是Maven:它是一个非常优秀的构建工具,可以很好地处理来自Maven存储库的依赖关系
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>4.3.0.Final</version>
</dependency>
@OneToMany(fetch = FetchType.LAZY, mappedBy = "id.store", cascade = {
CascadeType.PERSIST, CascadeType.MERGE }, orphanRemoval=true)
<dependencies>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-server</artifactId>
<version>${jersey-version}</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-json</artifactId>
<version>${jersey-version}</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.8.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-client</artifactId>
<version>${jersey-version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.glassfish.distributions</groupId>
<artifactId>web-all</artifactId>
<version>10.0-build-20080430</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.glassfish.embedded</groupId>
<artifactId>gf-embedded-api</artifactId>
<version>1.0-alpha-4</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>4.3.0.Final</version>
</dependency>
</dependencies>