【问题标题】:Unable to instantiate default tuplizer [org.hibernate.tuple.entity.PojoEntityTuplizer]无法实例化默认 tuplizer [org.hibernate.tuple.entity.PojoEntityTuplizer]
【发布时间】:2025-12-02 06:35:01
【问题描述】:

我正在使用 Hibernate 开发应用程序,但在连接数据库时出现异常。例外是:

Unable to instantiate default tuplizer [org.hibernate.tuple.entity.PojoEntityTuplizer]

我的映射文件是:

<hibernate-mapping>
<class name="com.cartif.database.SetPoint" table="SetPoint">
    <id name="iSetPointId" column="setpointid" type="java.lang.Integer">
        <generator class="sequence">
            <param name="sequence">s_setpoint</param>
        </generator>
    </id>
    <property column="sensorType" generated="never" lazy="false" name="sSensortype" type="java.lang.String"/>
    <property column="value" generated="never" lazy="false" name="dValue" type="java.lang.Double"/>
    <property column="relationship" generated="never" lazy="false" name="sRelation" type="java.lang.String"/>
    <property column="deviceid" generated="never" lazy="false" name="iDeviceId" type="java.lang.Integer"/>
</class>
</hibernate-mapping>

还有不包含 getter/setter 的类:

public class SetPoint {
    private int iSetPointId;
    private String sSensorType;
    private double dValue;
    private String sRelationship;
    private int iDeviceId;
}

我将javassist.jar 包含在类路径中。我不知道是什么问题。请有人帮助我。

谢谢!


我在启动错误时发现。如果我在映射文件中包含属性,则会引发异常。如果我只声明表的 id,则不会抛出异常。可能的原因是什么?


完整的堆栈跟踪是:

162980 [btpool0-2 - /Gateway/zigbeedriver/app] ERROR org.hibernate.proxy.pojo.BasicLazyInitializer  - Javassist Enhancement failed: com.cartif.database.ApplicationField
java.lang.RuntimeException: by java.lang.NoClassDefFoundError:   javassist/util/proxy/ProxyObject
at javassist.util.proxy.ProxyFactory.createClass(ProxyFactory.java:174)
at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.getProxyFactory(JavassistLazyInitializer.java:162)
at org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.postInstantiate(JavassistProxyFactory.java:65)
at org.hibernate.tuple.entity.PojoEntityTuplizer.buildProxyFactory(PojoEntityTuplizer.java:185)
at org.hibernate.tuple.entity.AbstractEntityTuplizer.<init>(AbstractEntityTuplizer.java:167)
at org.hibernate.tuple.entity.PojoEntityTuplizer.<init>(PojoEntityTuplizer.java:77)
at sun.reflect.GeneratedConstructorAccessor12.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at org.hibernate.tuple.entity.EntityTuplizerFactory.constructTuplizer(EntityTuplizerFactory.java:105)
at org.hibernate.tuple.entity.EntityTuplizerFactory.constructDefaultTuplizer(EntityTuplizerFactory.java:133)
at org.hibernate.tuple.entity.EntityEntityModeToTuplizerMapping.<init>(EntityEntityModeToTuplizerMapping.java:80)
at org.hibernate.tuple.entity.EntityMetamodel.<init>(EntityMetamodel.java:322)
at org.hibernate.persister.entity.AbstractEntityPersister.<init>(AbstractEntityPersister.java:485)
at org.hibernate.persister.entity.SingleTableEntityPersister.<init>(SingleTableEntityPersister.java:133)
at org.hibernate.persister.PersisterFactory.createClassPersister(PersisterFactory.java:84)
at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:286)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1845)
at com.db.manager.DatabaseManager.createSession(DatabaseManager.java:74)
at com.db.manager.DatabaseManager.loadObject(DatabaseManager.java:95)
at com.cartif.database.User.loadUser(User.java:53)
at com.cartif.database.User.checkUser(User.java:57)
at com.cartif.zigbee.ZigbeeDriverImpl.checkUser(ZigbeeDriverImpl.java:124)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
at org.springframework.osgi.service.importer.support.internal.aop.ServiceInvoker.doInvoke(ServiceInvoker.java:58)
at org.springframework.osgi.service.importer.support.internal.aop.ServiceInvoker.invoke(ServiceInvoker.java:62)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at org.springframework.osgi.service.util.internal.aop.ServiceTCCLInterceptor.invokeUnprivileged(ServiceTCCLInterceptor.java:56)
at org.springframework.osgi.service.util.internal.aop.ServiceTCCLInterceptor.invoke(ServiceTCCLInterceptor.java:39)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at org.springframework.osgi.service.importer.support.LocalBundleContextAdvice.invoke(LocalBundleContextAdvice.java:59)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at $Proxy21.checkUser(Unknown Source)
at main.com.cartif.app.server.AppServiceImpl.getUser(AppServiceImpl.java:39)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:569)
at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:208)
at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248)
at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at main.com.cartif.app.server.AppServiceImpl.service(AppServiceImpl.java:33)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:320)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:842)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
Caused by: javassist.CannotCompileException: by java.lang.NoClassDefFoundError: javassist/util/proxy/ProxyObject
at javassist.util.proxy.FactoryHelper.toClass(FactoryHelper.java:167)
at javassist.util.proxy.ProxyFactory.createClass(ProxyFactory.java:170)
... 72 more
Caused by: java.lang.NoClassDefFoundError: javassist/util/proxy/ProxyObject
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(Unknown Source)
at java.lang.ClassLoader.defineClass(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at javassist.util.proxy.FactoryHelper.toClass(FactoryHelper.java:159)
... 73 more
Caused by: java.lang.ClassNotFoundException: javassist.util.proxy.ProxyObject
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:506)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 81 more
163012 [btpool0-2 - /Gateway/zigbeedriver/app] WARN   org.hibernate.tuple.entity.PojoEntityTuplizer  - could not create proxy factory for:com.cartif.database.ApplicationField
org.hibernate.HibernateException: Javassist Enhancement failed: com.cartif.database.ApplicationField
at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.getProxyFactory(JavassistLazyInitializer.java:169)
at org.hibernate.proxy.pojo.javassist.JavassistProxyFactory.postInstantiate(JavassistProxyFactory.java:65)
at org.hibernate.tuple.entity.PojoEntityTuplizer.buildProxyFactory(PojoEntityTuplizer.java:185)
at org.hibernate.tuple.entity.AbstractEntityTuplizer.<init>(AbstractEntityTuplizer.java:167)
at org.hibernate.tuple.entity.PojoEntityTuplizer.<init>(PojoEntityTuplizer.java:77)
at sun.reflect.GeneratedConstructorAccessor12.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at org.hibernate.tuple.entity.EntityTuplizerFactory.constructTuplizer(EntityTuplizerFactory.java:105)
at org.hibernate.tuple.entity.EntityTuplizerFactory.constructDefaultTuplizer(EntityTuplizerFactory.java:133)
at org.hibernate.tuple.entity.EntityEntityModeToTuplizerMapping.<init>(EntityEntityModeToTuplizerMapping.java:80)
at org.hibernate.tuple.entity.EntityMetamodel.<init>(EntityMetamodel.java:322)
at org.hibernate.persister.entity.AbstractEntityPersister.<init>(AbstractEntityPersister.java:485)
at org.hibernate.persister.entity.SingleTableEntityPersister.<init>(SingleTableEntityPersister.java:133)
at org.hibernate.persister.PersisterFactory.createClassPersister(PersisterFactory.java:84)
at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:286)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1845)
at com.db.manager.DatabaseManager.createSession(DatabaseManager.java:74)
at com.db.manager.DatabaseManager.loadObject(DatabaseManager.java:95)
at com.cartif.database.User.loadUser(User.java:53)
at com.cartif.database.User.checkUser(User.java:57)
at com.cartif.zigbee.ZigbeeDriverImpl.checkUser(ZigbeeDriverImpl.java:124)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
at org.springframework.osgi.service.importer.support.internal.aop.ServiceInvoker.doInvoke(ServiceInvoker.java:58)
at org.springframework.osgi.service.importer.support.internal.aop.ServiceInvoker.invoke(ServiceInvoker.java:62)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at org.springframework.osgi.service.util.internal.aop.ServiceTCCLInterceptor.invokeUnprivileged(ServiceTCCLInterceptor.java:56)
at org.springframework.osgi.service.util.internal.aop.ServiceTCCLInterceptor.invoke(ServiceTCCLInterceptor.java:39)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at org.springframework.osgi.service.importer.support.LocalBundleContextAdvice.invoke(LocalBundleContextAdvice.java:59)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at $Proxy21.checkUser(Unknown Source)
at main.com.cartif.app.server.AppServiceImpl.getUser(AppServiceImpl.java:39)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:569)
at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:208)
at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248)
at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at main.com.cartif.app.server.AppServiceImpl.service(AppServiceImpl.java:33)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:320)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:842)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
Caused by: java.lang.RuntimeException: by java.lang.NoClassDefFoundError: javassist/util/proxy/ProxyObject
at javassist.util.proxy.ProxyFactory.createClass(ProxyFactory.java:174)
at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.getProxyFactory(JavassistLazyInitializer.java:162)
... 71 more
Caused by: javassist.CannotCompileException: by java.lang.NoClassDefFoundError: javassist/util/proxy/ProxyObject
at javassist.util.proxy.FactoryHelper.toClass(FactoryHelper.java:167)
at javassist.util.proxy.ProxyFactory.createClass(ProxyFactory.java:170)
... 72 more
Caused by: java.lang.NoClassDefFoundError: javassist/util/proxy/ProxyObject
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(Unknown Source)
at java.lang.ClassLoader.defineClass(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at javassist.util.proxy.FactoryHelper.toClass(FactoryHelper.java:159)
... 73 more
Caused by: java.lang.ClassNotFoundException: javassist.util.proxy.ProxyObject
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:506)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 81 more

【问题讨论】:

  • java.lang.RuntimeException: by java.lang.NoClassDefFoundError: javassist/util/proxy/ProxyObject 这告诉我无法访问 javassist。您如何将此库包含到项目中?
  • 我将库添加到文件夹“lib”中,并在清单文件中包含一行:Bundle-ClassPath:lib/javassist.jar
  • 您是在构建独立应用程序还是网络应用程序?
  • 它是 OSGi 上下文中的 Web 应用程序。然后我像捆绑一样部署war文件
  • 如果它是一个网络应用程序,您必须将您的库放入 WEB-INF/lib 文件夹。它们将被您的应用程序提取。

标签: java database hibernate


【解决方案1】:

设置“长”类型的 id 而不是 java.lang.Integer。并将 getter 和 setter 添加到您的字段中。

【讨论】:

    【解决方案2】:

    当我遇到这个错误时,修复很简单。我只是缺少一个属性的设置器。确保为所有属性定义匹配的 getter / setter。

    【讨论】:

    • 检查整个堆栈跟踪 - 它会告诉你丢失的方法的名称。
    • 我遇到了同样的问题,在阅读您的回答后得到了解决。谢谢。
    • 对我来说不是问题。我只有两个类变量,并且都有 getter 和 setter。
    • 我有一个不应该被持久化的吸气剂。必须添加 @Transient 才能使其工作。
    • 只需在你的休眠会话工厂初始化周围加上一个try and catch。抛出的异常应该说明问题出在哪里。
    【解决方案3】:

    我在我的项目中使用 spring 3.0 和 Hibernate 3.6。我刚才遇到了同样的错误。谷歌搜索此错误消息将我带到此页面。

    Funtik 在 2012 年 1 月 17 日 8:49 的评论帮助我解决了这个问题-

    “这告诉我javassist无法访问。你如何将这个库包含到项目中?”

    所以,我在我的 maven pom 文件中包含了 java 辅助,如下所示:

    <dependency>
        <groupId>javassist</groupId>
        <artifactId>javassist</artifactId>
        <version>3.12.1.GA</version>
    </dependency>
    

    这为我解决了这个问题。感谢 Funtik。

    【讨论】:

      【解决方案4】:

      我也遇到了同样的问题。

      添加了相同的依赖并且它工作了(像这样):

      <dependency>
          <groupId>javassist</groupId>
          <artifactId>javassist</artifactId>
          <version>3.12.1.GA</version>
      </dependency> 
      

      【讨论】:

      • 嗨,你能解释一下 javassit.jar 是做什么的,为什么它可以解决这类问题以及为什么我应该将它添加到我的项目中?
      • Hibernate 使用 Javassist 代理来帮助延迟加载。
      【解决方案5】:

      检查您的 Hibernate 映射文件 *.hbm.xml 并检查用于创建 getter 和 setter 方法的类。映射文件中的每个属性都应作为填充类中的 getter 和 setter 存在。一旦你修复,错误就解决了。

      另外,通过阅读控制台,您可能会看到提到缺少 getter/setter 的错误。

      希望对你有所帮助。

      【讨论】:

        【解决方案6】:

        对我来说,这是通过添加显式默认构造函数来解决的

        public MyClassName (){}
        

        【讨论】:

          【解决方案7】:

          此问题是由于 name="iSetPointId" 使“i”大写和相应的模型类更改而产生的。

          【讨论】:

          • 恐怕这个答案可以作为评论添加。
          【解决方案8】:

          在我的例子中,我有一个 isSomething() boolean getter 并得到了这个错误。

          我通过使用 JPA @Transient 批注对方法进行批注来解决它,并在 this SO question 的答案中找到确认,因此告诉提供者不要保留该属性。

          【讨论】:

            【解决方案9】:

            即使在添加无参数构造函数后我也遇到了同样的错误,然后我发现我缺少几个 JAR。我发布这个是为了如果有人像我一样遇到错误,请确保你已经添加了这些 JAR在你的 lib 文件夹中:

            activation-1.0.2.jar
            antlr-2.7.6.jar
            aopalliance.jar
            asm-1.5.3.jar
            asm-attrs-1.5.3.jar
            cglib-2.1_3.jar
            commons-beanutils-1.7.0.jar
            commons-collections-2.1.1.jar
            commons-digester-1.8.jar
            commons-email-1.0.jar
            commons-fileupload-1.1.1.jar
            commons-io-1.1.jar
            commons-lang-2.5.jar
            commons-logging-1.1.3.jar
            dom4j-1.6.1.jar
            dumbster-1.6.jar
            ehcache-1.2.3.jar
            ejb3-persistence-3.3.1.jar
            hibernate-commons-annotations-4.0.4.Final.jar
            hibernate-core-4.2.8.Final.jar
            icu4j-2.6.1.jar
            javassist-3.4.GA.jar
            javax.persistence_2.0.3.v201010191057.jar
            javax.servlet.jsp.jstl-1.2.1.jar
            jaxb-api-2.1.jar
            jaxb-impl-2.1.3.jar
            jaxen-1.1.1.jar
            jboss-logging-3.1.3.GA.jar
            jdom-1.0.jar
            jstl-1.2.jar
            jta-1.1.jar
            lucene-core-2.3.2.jar
            lucene-highlighter-2.0.0.jar
            mail-1.4.jar
            mysql-connector-java-5.0.8-bin.jar
            org.springframework.orm.jar
            slf4j-api-1.6.1.jar
            slf4j-log4j12-1.5.6.jar
            spring-aop-4.0.0.RELEASE.jar
            spring-aspects-4.0.0.RELEASE-javadoc.jar
            spring-beans-4.0.0.RELEASE.jar
            spring-build-src-4.0.0.RELEASE.jar
            spring-context-4.0.0.RELEASE.jar
            spring-core-4.0.0.RELEASE.jar
            spring-expression-4.0.0.RELEASE.jar
            spring-framework-bom-4.0.0.RELEASE.jar
            spring-jdbc-4.0.0.RELEASE.jar
            spring-orm-4.0.0.RELEASE.jar
            spring-tx-4.0.0.RELEASE.jar
            spring-web-4.0.0.RELEASE.jar
            spring-webmvc-4.0.0.RELEASE.jar
            stax-api-1.0-2.jar
            validation-api-1.0.0.GA.jar
            xalan-2.6.0.jar
            xercesImpl-2.6.2.jar
            xml-apis-1.3.02.jar
            xmlParserAPIs-2.6.2.jar
            xom-1.0.jar
            

            【讨论】:

              【解决方案10】:

              将以下内容添加到您的pom.xml 并从休眠中的asm jar 中取出依赖项,并在单独的部分中将单独的依赖项添加到asm。我也做了同样的事情,而且一次就奏效了。

                  <!-- Hibernate core -->
                  <dependency>
                    <groupId>org.hibernate</groupId>
                    <artifactId>hibernate</artifactId>
                    <version>3.2.7.ga</version>
              
                 <exclusions>      
                    <exclusion>
                       <groupId>asm</groupId> 
                         <artifactId>asm</artifactId>
                       </exclusion>
                    <exclusion>   
                        <groupId>asm</groupId>
                          <artifactId>asm-attrs</artifactId>
                        </exclusion>
                    </exclusions>
                  </dependency>
              
              
                  <dependency>
                    <groupId>asm</groupId>
                    <artifactId>asm</artifactId>
                    <version>3.1</version>
              

              【讨论】:

                【解决方案11】:

                根据堆栈跟踪:

                Caused by: java.lang.NoClassDefFoundError: javassist/util/proxy/ProxyObject at     java.lang.ClassLoader.defineClass1(Native Method)
                

                这个问题是由“java.lang.NoClassDefFoundError”引起的,所以我认为你应该关注这个。

                直接的解决方法是添加依赖

                <dependency>
                    <groupId>javassist</groupId>
                    <artifactId>javassist</artifactId>
                    <version>3.12.1.GA</version>
                </dependency>
                

                到你的 pom.xml。

                【讨论】:

                  【解决方案12】:

                  我遇到了类似的问题,在经历了很多关于堆栈溢出和花时间处理 jar 依赖项之后,我发现在我的情况下,我有两组 asm.jar。我删除了其中一个,它工作正常......

                  【讨论】:

                    【解决方案13】:

                    我遇到了同样的问题并通过添加此依赖项解决了它。

                    <dependency>
                        <groupId>javassist</groupId>
                        <artifactId>javassist</artifactId>
                        <version>3.12.1.GA</version>
                    </dependency>   
                    

                    我使用的是休眠 3.6 版本。

                    【讨论】:

                      【解决方案14】:

                      在我的情况下,有助于从休眠中排除 javax.transaction.jta 依赖项:

                      <dependency>
                        <groupId>org.hibernate</groupId>
                        <artifactId>hibernate</artifactId>
                        <version>3.2.7.ga</version>
                        <exclusions>
                          <exclusion>
                            <groupId>javax.transaction</groupId>
                            <artifactId>jta</artifactId>
                          </exclusion>
                        </exclusions>
                      </dependency>
                      

                      【讨论】:

                        【解决方案15】:

                        请同时检查 Hibernate 属性名称和 Id 名称。

                        【讨论】:

                          【解决方案16】:

                          我有同样的例外,我排除了javassist,因为它的issue withpowermock。然后我再次添加它,如下所示,但它不起作用:

                          <dependency>
                             <groupId>org.powermock</groupId>
                             <artifactId>powermock-module-junit4</artifactId>
                             <version>1.7.0</version>
                             <scope>test</scope>
                             <exclusions>
                                <exclusion>
                                   <groupId>org.javassist</groupId>
                                   <artifactId>javassist</artifactId>
                                </exclusion>
                             </exclusions>
                          </dependency>
                          
                          <dependency>
                             <groupId>org.javassist</groupId>
                             <artifactId>javassist</artifactId>
                             <version>3.20.0-GA</version>
                             <scope>test</scope>
                          </dependency>
                          

                          最后我发现我必须从 javassist 依赖项中删除 &lt;scope&gt;test&lt;/scope&gt;。希望它可以帮助某人。

                          【讨论】:

                            【解决方案17】:

                            我知道这是一个老问题,很多答案很有帮助,但就我而言,不幸的是,我遇到了同样的错误,原因不同。 (Spring boot 2.0.5.RELEASE) 如果你使用的是

                            IntelliJ IDEA 2018.1.5 或以上且你设置JDK版本为JDK 11

                            发生了同样的异常。更新后

                            JDK 版本为 8

                            错误消失了。

                            【讨论】:

                            • 谢谢。我面临着同样的问题。不过,如果可以的话,对 Spring Boot 2.1 的更新起到了作用。
                            • 非常感谢,我在使用 Spring Boot 2 时遇到了同样的问题,将项目改回 Java SDK 的 v1.8 并解决了问题。
                            • 这就是我的答案
                            【解决方案18】:

                            在我的情况下,我有一个 Kotlin 类,其中一些字段未打开,因此生成的 Java setter 和 getter 将是最终的。通过在每个字段中添加 open 关键字来解决它。

                            之前:

                            open class User(
                                var id: String = "",
                                var email: String = ""
                            )
                            

                            之后:

                            open class User(
                                open var id: String = "",
                                open var email: String = ""
                            )
                            

                            【讨论】:

                              【解决方案19】:

                              我的问题是由于版本冲突。 我通过从 springfox 中排除 byte-buddy 依赖解决了这个问题

                              <dependency>
                                <groupId>io.springfox</groupId>
                                <artifactId>springfox-swagger2</artifactId>
                                <version>2.7.0</version>
                                <exclusions>
                                <exclusion>
                                  <groupId>net.bytebuddy</groupId>
                                  <artifactId>byte-buddy</artifactId>
                                </exclusion>
                                </exclusions>
                              </dependency>
                              
                              <dependency>
                                <groupId>io.springfox</groupId>
                                <artifactId>springfox-swagger-ui</artifactId>
                                <version>2.7.0</version>
                                <exclusions>
                                <exclusion>
                                  <groupId>net.bytebuddy</groupId>
                                  <artifactId>byte-buddy</artifactId>
                                </exclusion>
                              </exclusions>
                              </dependency>
                              

                              【讨论】:

                                【解决方案20】:

                                我知道这篇文章很旧,但我遇到了同样的问题,我通过简单地将我的配置从 Java 11 更改为 Java 8 来解决它。

                                【讨论】:

                                  【解决方案21】:

                                  这里与 Jasper Reports Server (JRS) v7.2.0 相同,这显然 与 Oracle JDK 11(可能与 OpenJDK 11)不兼容,但 分布式 Ora JDK 1.8.0_201 运行良好。 这也记录在 JRS 社区论坛中:https://community.jaspersoft.com/questions/1141881/jasper-installation-community-version

                                  【讨论】:

                                    最近更新 更多