我将Web应用程序部署到Tomcat 9.0.13服务器,在WEB-INF / lib下有与Hibernate相关的jar文件。当我启动服务器时,它在许多Hibernate映射类中给我错误:
1991 [main] ERROR proxy.BasicLazyInitializer - CGLIB Enhancement failed: com.usps.nom.tops.model.impl.ComputedHardCloseoutImpl
java.lang.NoClassDefFoundError: Could not initialize class net.sf.cglib.proxy.Enhancer
at org.hibernate.proxy.CGLIBLazyInitializer.getProxyFactory(CGLIBLazyInitializer.java:116)
at org.hibernate.proxy.CGLIBProxyFactory.postInstantiate(CGLIBProxyFactory.java:41)
原始的Cglib版本是cglib-2.1.jar,我尝试了最新的cglib-3.2.12.jar,原始的错误消失了,但是出现了新的错误:
1619 [main] ERROR proxy.BasicLazyInitializer - CGLIB Enhancement failed: com.usps.nom.tops.model.transportation.AplDispatch
java.lang.NoClassDefFoundError: net.sf.cglib.core.AbstractClassGenerator
at org.hibernate.proxy.CGLIBLazyInitializer.getProxyFactory(CGLIBLazyInitializer.java:116)
at org.hibernate.proxy.CGLIBProxyFactory.postInstantiate(CGLIBProxyFactory.java:41)
at org.hibernate.tuple.PojoEntityTuplizer.buildProxyFactory(PojoEntityTuplizer.java:161)
我尝试了不同版本的Cglib jars文件:
cglib-2.1.jar,cglib-2.1_3.jar,cglib-3.2.1.jar,cglib-3.2.12.jar,cglib-nodep-2.1.jar,cglib-nodep-3.2.12.jar < / p>
但是他们总是给我以上错误之一。
WEB-INF / lib下与Hibernate相关的其他jar是: ehcache-1.1.jar,ehcache-core-2.4.8.jar,hibernate3.jar(3.1.0)
如果我在Eclipse项目中本地启动Tomcat服务器,则不会出现此类错误。有人可以帮忙吗?谢谢
答案 0 :(得分:0)
我们从先前的供应商IBM继承了此Web应用程序。它不是用Maven构建的。与休眠相关的jar的版本是: cglib-2.1.jar,ehcache-1.1.jar,hibernate3.jar(3.1.0)
此Web应用程序已部署到WebSphere服务器,到目前为止运行良好,但是现在我们的客户端需要切换到Tomcat服务器。 Web应用程序在eclipse中的本地Tomcat 9.0.13服务器中可以正常运行,但是当我将其部署到Web服务器时,启动服务器时会发生这些错误。谢谢。