我使用yo jhipster创建了一个整体应用程序,但是在创建DTO后出现错误.我遇到以下错误



我使用Springboot创建了一个应用程序,但是当我运行mvnw时发生以下错误:

org.springframework.beans.factory.BeanCreationException:创建文件名为"cacheConfiguration"的 Bean 时出错 [F:\Eticketing\target\classes\com\vivek\java\config\CacheConfiguration.class]:通过构造函数实例化 Bean 失败;嵌套异常是 org.springframework.beans.BeanInstantiationException:无法实例化 [com.vivek.java.config.CacheConfiguration$$EnhancerBySpringCGLIB$$4af1530c]:构造函数抛出异常;嵌套exception is java.lang.NoClassDefFoundError: org/hibernate/engine/jndi/JndiNameException at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:279) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1201) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1103) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:513) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:312) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:308) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:761) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:867) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:543) at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:693) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:360) at org.springframework.boot.SpringApplication.run(SpringApplication.java:303) at com.vivek.java.EticketingApp.main(EticketingApp.java:68) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49) 由:org.springframework.beans.BeanInstantiationException:无法实例化[com.vivek.java.config.CacheConfiguration$$EnhancerBySpringCGLIB$$4af1530c]:构造函数抛出异常;nested exception is java.lang.NoClassDefFoundError: org/hibernate/engine/jndi/JndiNameException at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:154) at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:122) at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:271) ...省略了 21 个常见帧 原因:java.lang.NoClassDefFoundError: org/hibernate/engine/jndi/JndiNameException at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:348) at org.jboss.logging.Logger$1.run(Logger.java:2554) at java.security.AccessController.doPrivileged(Native Method) at org.jboss.logging.Logger.getMessageLogger(Logger.java:2529) at org.jboss.logging.Logger.getMessageLogger(Logger.java:2516) at org.hibernate.cache.jcache.JCacheRegionFactory.(JCache地区工厂.java:45) at com.vivek.java.config.CacheConfiguration.(缓存配置.java:28) at com.vivek.java.config.CacheConfiguration$$EnhancerBySpringCGLIB$$4af1530c.()at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:142 省略了 23 个常见帧 原因:java.lang.ClassNotFoundException: org.hibernate.engine.jndi.JndiNameExceptionat java.net.URLClassLoader.findClass(URLClassLoader.java:382) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349) at java.lang.ClassLoader.loadClass(ClassLoader.java:357)

您的缓存配置可能是错误的。去看看你的CacheConfiguration课。您需要确保为每个实体正确配置了CacheConfiguration#cacheManagerCustomizer方法。

ie:对于Foo实体,您需要添加以下内容

cm.createCache(com.test.Foo.class.getName(), jcacheConfiguration);

最新更新