java.lang.NoClassDefFoundError: javax/transaction/Synchronization

转自:https://blog.csdn.net/andsionok/article/details/68490848

今天在整合ssh框架中 程序报Java.lang.NoClassDefFoundError: javax/transaction/Synchronization


根据提示肯定是缺少类文件了。


可是自己编写了一个main方法测试,程序却没有问题,那为什么发布到tomcat中就出现 以上问题。


思路:1、这样一定是tomcat 环境中没有 javax.transaction.Synchronization类,而我的ide(myeclipse)的工程build path中含有javax.transaction.Synchronization 类

         2、寻找 javax.transaction.Synchronization 发现在javaee.jar 中有这个类,这个是建立web project 时选择j2ee 5.0规范产生的。

解决方法:在hibernate 所提供的lib中找到jta.jar 放到你的web project 的web-inf/lib中。其实jta.jar 是javaee.jar的一部分。

原文地址:https://www.cnblogs.com/sharpest/p/6045291.html