我有2张桌子..
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
}
我知道上面的代码有点乱,但是我被困在一个只有互联网1接入终端的地方,其余的是无法连接到互联网的开发PC。
我希望有些善良的人可以帮助我。我很确定异常是由@ManyToMany语句导致的,因为当我将其注释掉时...会导致错误。
有什么我可以下载来捕获HibernateUtil中的异常吗?这个例外似乎是无关的。
来自山区的感激之情:(
答案 0 :(得分:1)
亲爱的开发者和兄弟们。
如果您在运行时遇到NoClassDefFoundError异常,请停止查看您的隐藏注释或代码。
此异常与类路径问题有关。
1)在运行时无法找到课程 2)重复的罐子。
基本上对我来说,我的类路径中有一个ejb3-persistence.jar,2个javax persistence.jar。
我从eclipse
中的构建路径中删除了javax persistence.jar后,一切正常go project&gt; properties&gt; java build path&gt; Libraries
并正确配置您的构建路径。这应该可以解决错误。
希望它可以帮助其他开发人员陷入困境。