spring-brick
spring-brick copied to clipboard
Why do I report this error when starting the project? This package has been relied on. Is there something wrong with the project itself? Hope to get your answer.
Caused by: java.lang.NoClassDefFoundError: org/springframework/scheduling/quartz/QuartzJobBean at java.lang.ClassLoader.defineClass1(Native Method) ~[?:?] at java.lang.ClassLoader.defineClass(ClassLoader.java:1016) ~[?:?] at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:174) ~[?:?] at java.net.URLClassLoader.defineClass(URLClassLoader.java:550) ~[?:?] at java.net.URLClassLoader$1.run(URLClassLoader.java:458) ~[?:?] at java.net.URLClassLoader$1.run(URLClassLoader.java:452) ~[?:?] at java.security.AccessController.doPrivileged(Native Method) ~[?:?] at java.net.URLClassLoader.findClass(URLClassLoader.java:451) ~[?:?] at org.pf4j.PluginClassLoader.loadClass(PluginClassLoader.java:128) ~[pf4j-3.5.0.jar:3.5.0] at java.lang.Class.forName0(Native Method) ~[?:?] at java.lang.Class.forName(Class.java:398) ~[?:?] at com.gitee.starblues.factory.process.pipe.classs.PluginClassProcess.registry(PluginClassProcess.java:79) ~[classes/:?] at com.gitee.starblues.factory.process.pipe.PluginPipeProcessorFactory.registry(PluginPipeProcessorFactory.java:65) ~[classes/:?] at com.gitee.starblues.factory.DefaultPluginFactory.registry(DefaultPluginFactory.java:86) ~[classes/:?] at com.gitee.starblues.integration.operator.DefaultPluginOperator.initPlugins(DefaultPluginOperator.java:119) ~[classes/:?] at com.gitee.starblues.integration.operator.PluginOperatorWrapper.initPlugins(PluginOperatorWrapper.java:41) ~[classes/:?] at com.gitee.starblues.integration.application.DefaultPluginApplication.initialize(DefaultPluginApplication.java:63) ~[classes/:?] at com.gitee.starblues.integration.application.AutoPluginApplication.afterPropertiesSet(AutoPluginApplication.java:60) ~[classes/:?] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1847) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1784) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:609) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:531) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1380) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1300) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) ~[spring-beans-5.3.3.jar:5.3.3] ... 20 more Caused by: java.lang.ClassNotFoundException: org.springframework.scheduling.quartz.QuartzJobBean at org.pf4j.PluginClassLoader.loadClass(PluginClassLoader.java:144) ~[pf4j-3.5.0.jar:3.5.0] at java.lang.ClassLoader.defineClass1(Native Method) ~[?:?] at java.lang.ClassLoader.defineClass(ClassLoader.java:1016) ~[?:?] at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:174) ~[?:?] at java.net.URLClassLoader.defineClass(URLClassLoader.java:550) ~[?:?] at java.net.URLClassLoader$1.run(URLClassLoader.java:458) ~[?:?] at java.net.URLClassLoader$1.run(URLClassLoader.java:452) ~[?:?] at java.security.AccessController.doPrivileged(Native Method) ~[?:?] at java.net.URLClassLoader.findClass(URLClassLoader.java:451) ~[?:?] at org.pf4j.PluginClassLoader.loadClass(PluginClassLoader.java:128) ~[pf4j-3.5.0.jar:3.5.0] at java.lang.Class.forName0(Native Method) ~[?:?] at java.lang.Class.forName(Class.java:398) ~[?:?] at com.gitee.starblues.factory.process.pipe.classs.PluginClassProcess.registry(PluginClassProcess.java:79) ~[classes/:?] at com.gitee.starblues.factory.process.pipe.PluginPipeProcessorFactory.registry(PluginPipeProcessorFactory.java:65) ~[classes/:?] at com.gitee.starblues.factory.DefaultPluginFactory.registry(DefaultPluginFactory.java:86) ~[classes/:?] at com.gitee.starblues.integration.operator.DefaultPluginOperator.initPlugins(DefaultPluginOperator.java:119) ~[classes/:?] at com.gitee.starblues.integration.operator.PluginOperatorWrapper.initPlugins(PluginOperatorWrapper.java:41) ~[classes/:?] at com.gitee.starblues.integration.application.DefaultPluginApplication.initialize(DefaultPluginApplication.java:63) ~[classes/:?] at com.gitee.starblues.integration.application.AutoPluginApplication.afterPropertiesSet(AutoPluginApplication.java:60) ~[classes/:?] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1847) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1784) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:609) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:531) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1380) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1300) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887) ~[spring-beans-5.3.3.jar:5.3.3] at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) ~[spring-beans-5.3.3.jar:5.3.3] ... 20 more
This error is probably the wrong configuration, but I don't know which configuration is wrong. I think it is very necessary for the open source project to explain this project. especially those error prone configurations
If the plugin integrates dependencies, it is recommended that the dependencies be placed in the main program. It is not recommended that the plug-in load dependencies.
Detailed reference case: https://gitee.com/starblues/springboot-plugin-framework-example
thank you very much .The background I use is like this , I want the plugin to implement controllers that are segmented according to business. These controllers depend on another module of mine.now I have an another questions.the error is below:
java.lang.RuntimeException: The extension has been initialized
at com.gitee.starblues.extension.ExtensionInitializer.initialize(ExtensionInitializer.java:53)
at com.gitee.starblues.integration.listener.DefaultInitializerListener.before(DefaultInitializerListener.java:24)
at com.gitee.starblues.integration.listener.PluginInitializerListenerFactory.before(PluginInitializerListenerFactory.java:30)
at com.gitee.starblues.integration.operator.DefaultPluginOperator.initPlugins(DefaultPluginOperator.java:96)
at com.gitee.starblues.integration.operator.PluginOperatorWrapper.initPlugins(PluginOperatorWrapper.java:41)
at com.gitee.starblues.integration.application.DefaultPluginApplication.initialize(DefaultPluginApplication.java:67)
at com.gitee.starblues.integration.application.AutoPluginApplication.afterPropertiesSet(AutoPluginApplication.java:60)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1845)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1782)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:602)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:524)
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:944)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:917)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:582)
at com.gitee.starblues.factory.process.pipe.PluginPipeApplicationContextProcessor.registry(PluginPipeApplicationContextProcessor.java:59)
at com.gitee.starblues.factory.process.pipe.PluginPipeProcessorFactory.registry(PluginPipeProcessorFactory.java:65)
at com.gitee.starblues.factory.DefaultPluginFactory.registry(DefaultPluginFactory.java:86)
at com.gitee.starblues.integration.operator.DefaultPluginOperator.initPlugins(DefaultPluginOperator.java:124)
at com.gitee.starblues.integration.operator.PluginOperatorWrapper.initPlugins(PluginOperatorWrapper.java:41)
at com.gitee.starblues.integration.application.DefaultPluginApplication.initialize(DefaultPluginApplication.java:67)
at com.gitee.starblues.integration.application.AutoPluginApplication.afterPropertiesSet(AutoPluginApplication.java:60)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1845)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1782)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:602)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:524)
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:944)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:917)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:582)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:144)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:767)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:426)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:326)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1311)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1300)
at com.zqykj.AnalysisServiceApplication.main(AnalysisServiceApplication.java:14)
2021-09-08 11:24:52.619 WARN 746120 --- [ main] .s.f.p.p.PluginInterceptorsPipeProcessor : Not found AbstractHandlerMapping, Plugin interceptor can't use
org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping' available
at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:351)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:342)
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1171)
at com.gitee.starblues.factory.process.post.bean.PluginControllerPostProcessor.
My problem is solved. Let me repeat my question.
At first, I want to find the beans that my main program has injected into the spring container in my plugin. I try to scan and register these beans with 'Configuration' and 'ComponentScan' annotation in my plugin.
But I failed. It always tells me that these beans have been instantiated. It is also true that when the main program starts, it has been scanned and registered. However, I can't get the beans instantiated by the main program in the plugin.
Later, I decided to read the code in the case you sent me. Then, I found the 'getmainbean' method in 'Pluginutils'. It really solved my problem. I got the instantiated bean in my main program. It's really exciting. It makes me very uncomfortable all day on Tuesday.
Finally the dependency of this integration plugin is really very practical. It is very convenient and powerful.
Thank you very much for your answers and help.
No problem!All documentation of the framework is available on the official website: http://www.starblues.cn , but the official documentation of the framework is in Chinese.
ok . i know something a little about Chinese .