我有 2 张 table ..
Adult
-------------------
id
ParentChild
-------------------
parentID(adult's id)
childID(adult's id)
当我尝试注释它们时..我不断收到NoClassDefFoundError
public class Adult
private id
private Set<Adult> children
.
.
.
@ManyToMany(fetch = FetchType.Lazy)
@JoinTable(name= "ParentChild",
joinColumns=@JoinColumn(name="id",referencedColumnName="parentID")
inverseJoinColumn=@JoinColumn(name=childID,referencedColumnName="id")
public Set<Adult> getChildren() {
.
.
}
public class ParentChild{
.
.
.
.
private String parentID
private String childID
}
我知道上面的代码有点乱,但我被困在一个只有 internet 1 接入终端的地方,其余的都是无法连接到互联网的开发 PC。
希望有好心人可以帮助我。我非常确定该异常是由 @ManyToMany 语句引起的,因为当我将其注释掉时..它将导致错误。
我可以下载什么东西来捕获 HibernateUtil 中的异常吗?该异常似乎无关。
来自大山的感谢:(
最佳答案
亲爱的开发者和兄弟们。
如果您在运行时遇到 NoClassDefFoundError 异常,请停止查看您的 HIBERNATE 注释或代码。
此异常与类路径问题有关。
1) 运行时无法找到类 2) 重复的 jar 。
基本上对我来说,我的类路径中有一个 ejb3-persistence.jar、2 个 javax persistence.jar。
当我从 eclipse 的构建路径中删除 javax persistence.jar 后,一切正常
转到项目>属性>java构建路径>库
并正确配置您的构建路径。这应该可以解决错误。
希望它能帮助另一个陷入困境的开发者。
关于java - Hibernate 注解 - 成人和可连接(父子),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10274688/