java.lang.NoClassDefFoundError:org/hibernate/cfg/Configuration

Blu*_*lue 10 java eclipse hibernate

我正在尝试使用Eclipse中的Hibernate进行初始设置,同时使用Tomcat进行部署.

我遇到了以下问题:

java.lang.ClassNotFoundException: org.hibernate.cfg.Configuration
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1701)
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1546)
    db.HibernateUtil.buildSessionFactory(HibernateUtil.java:13)
    db.HibernateUtil.<clinit>(HibernateUtil.java:8)
Run Code Online (Sandbox Code Playgroud)

我已经在线解决了我的问题,我知道它与项目类路径有关.

我已经在我的项目中添加了一个用户库,其中包含hibernate下载中"required"目录下的所有jar,但这似乎不起作用.

在此处找到我的项目的屏幕截图:

Chr*_*ite 24

您收到错误是因为Tomcat无法使用hibernate库.在你的图片中,在hibernate库集下面有一个名为"Web App Libraries"的空集 - 这是你的hibernate库需要的集合.

右键单击您的项目 - >构建路径 - >配置构建路径,然后从构建路径中删除hibernate集.现在将jar导入WEB-INF/lib文件夹.刷新你的项目,现在你应该看到它们列在'Web App Libraries'集中(我很感激你有点讨厌,你必须将它们导入你的代码库 - 其他人可能知道一个更好的方法来做到这一点不涉及复制罐子)

  • @Chris White 在 IntelliJ IDEA 中怎么样? (2认同)

pra*_*eth 18

当您的jar文件尚未与Web存档一起导出时,可能会发生此错误.您可以执行@Chris White所说的内容,或者如果您使用的是Eclipse,则可以按照以下步骤操作.

Right click the project -> Build Path -> Configure Build Path

在左侧列表中,单击Deployment Assembly.单击" 添加 "按钮.选择" Java Build Path Entries ",然后单击" 下一步".现在选择你的hibernate jar文件或库.点击完成.然后单击确定.
必要时重启服务器.