- 修改开发环境前端URL从localhost改为公网地址 - 更新PayPal Webhook URL使用公网地址配置 - 在生产环境配置中添加服务器端口和应用配置 - 添加PayPal支付配置的详细注释说明 - 简化ERP用户管理API文档格式,移除冗余说明 - 移除PayPal订单生命周期和Webhook指南文档 - 优化PayPal Webhook配置文档内容 fix(order): 修复订单创建和库存管理并发问题 - 实现SELECT FOR UPDATE锁定SKU记录防止超卖 - 添加库存扣减原子操作确保并发安全 - 简化日志输出,移除冗余调试信息 - 添加订单取消功能并恢复库存 - 优化订单查询和状态更新逻辑 feat(mapper): 添加库存扣减和恢复功能 - 实现deductStock方法用于扣减库存 - 添加restoreStock方法用于恢复库存 - 实现selectByIdForUpdate方法用于悲观锁 - 为Mapper接口添加必要的注解支持
328 lines
33 KiB
Plaintext
328 lines
33 KiB
Plaintext
2025-12-26 10:31:23.874 [main] ERROR com.mtkj.mtkjpay.MtkjpayApplication -
|
|
╔══════════════════════════════════════════════════════════╗
|
|
║ ║
|
|
║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║
|
|
║ ║
|
|
╚══════════════════════════════════════════════════════════╝
|
|
|
|
org.springframework.boot.devtools.restart.SilentExitExceptionHandler$SilentExitException: null
|
|
at org.springframework.boot.devtools.restart.SilentExitExceptionHandler.exitCurrentThread(SilentExitExceptionHandler.java:92)
|
|
at org.springframework.boot.devtools.restart.Restarter.immediateRestart(Restarter.java:179)
|
|
at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:163)
|
|
at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:532)
|
|
at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationStartingEvent(RestartApplicationListener.java:98)
|
|
at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationEvent(RestartApplicationListener.java:51)
|
|
at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:178)
|
|
at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:171)
|
|
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:149)
|
|
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:137)
|
|
at org.springframework.boot.context.event.EventPublishingRunListener.multicastInitialEvent(EventPublishingRunListener.java:136)
|
|
at org.springframework.boot.context.event.EventPublishingRunListener.starting(EventPublishingRunListener.java:75)
|
|
at org.springframework.boot.SpringApplicationRunListeners.lambda$starting$0(SpringApplicationRunListeners.java:54)
|
|
at java.base/java.lang.Iterable.forEach(Iterable.java:75)
|
|
at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:118)
|
|
at org.springframework.boot.SpringApplicationRunListeners.starting(SpringApplicationRunListeners.java:54)
|
|
at org.springframework.boot.SpringApplication.run(SpringApplication.java:315)
|
|
at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:42)
|
|
2025-12-26 10:48:58.194 [restartedMain] ERROR org.springframework.boot.SpringApplication - Application run failed
|
|
java.lang.IllegalArgumentException: Could not find class [com.mtkj.mtpay.config.PingPongProperties]
|
|
at org.springframework.util.ClassUtils.resolveClassName(ClassUtils.java:355)
|
|
at org.springframework.core.annotation.TypeMappedAnnotation.adapt(TypeMappedAnnotation.java:465)
|
|
at org.springframework.core.annotation.TypeMappedAnnotation.getValue(TypeMappedAnnotation.java:390)
|
|
at org.springframework.core.annotation.TypeMappedAnnotation.getAttributeValue(TypeMappedAnnotation.java:371)
|
|
at org.springframework.core.annotation.AbstractMergedAnnotation.getRequiredAttributeValue(AbstractMergedAnnotation.java:215)
|
|
at org.springframework.core.annotation.AbstractMergedAnnotation.getClassArray(AbstractMergedAnnotation.java:153)
|
|
at org.springframework.boot.context.properties.EnableConfigurationPropertiesRegistrar.lambda$getTypes$0(EnableConfigurationPropertiesRegistrar.java:55)
|
|
at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:273)
|
|
at org.springframework.core.annotation.MergedAnnotationsCollection$AnnotationsSpliterator.tryAdvance(MergedAnnotationsCollection.java:254)
|
|
at java.base/java.util.Spliterator.forEachRemaining(Spliterator.java:332)
|
|
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
|
|
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
|
|
at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
|
|
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
|
|
at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682)
|
|
at org.springframework.boot.context.properties.EnableConfigurationPropertiesRegistrar.getTypes(EnableConfigurationPropertiesRegistrar.java:57)
|
|
at org.springframework.boot.context.properties.EnableConfigurationPropertiesRegistrar.registerBeanDefinitions(EnableConfigurationPropertiesRegistrar.java:49)
|
|
at org.springframework.context.annotation.ImportBeanDefinitionRegistrar.registerBeanDefinitions(ImportBeanDefinitionRegistrar.java:86)
|
|
at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.lambda$loadBeanDefinitionsFromRegistrars$1(ConfigurationClassBeanDefinitionReader.java:376)
|
|
at java.base/java.util.LinkedHashMap.forEach(LinkedHashMap.java:721)
|
|
at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitionsFromRegistrars(ConfigurationClassBeanDefinitionReader.java:375)
|
|
at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitionsForConfigurationClass(ConfigurationClassBeanDefinitionReader.java:148)
|
|
at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitions(ConfigurationClassBeanDefinitionReader.java:120)
|
|
at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:428)
|
|
at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:289)
|
|
at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:349)
|
|
at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:118)
|
|
at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:775)
|
|
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:597)
|
|
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146)
|
|
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753)
|
|
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:455)
|
|
at org.springframework.boot.SpringApplication.run(SpringApplication.java:323)
|
|
at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:42)
|
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
|
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
|
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
|
|
at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50)
|
|
Caused by: java.lang.ClassNotFoundException: com.mtkj.mtpay.config.PingPongProperties
|
|
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
|
|
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
|
|
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)
|
|
at java.base/java.lang.Class.forName0(Native Method)
|
|
at java.base/java.lang.Class.forName(Class.java:467)
|
|
at org.springframework.boot.devtools.restart.classloader.RestartClassLoader.loadClass(RestartClassLoader.java:121)
|
|
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)
|
|
at java.base/java.lang.Class.forName0(Native Method)
|
|
at java.base/java.lang.Class.forName(Class.java:467)
|
|
at org.springframework.util.ClassUtils.forName(ClassUtils.java:304)
|
|
at org.springframework.util.ClassUtils.resolveClassName(ClassUtils.java:345)
|
|
... 38 common frames omitted
|
|
2025-12-26 10:48:58.197 [restartedMain] ERROR com.mtkj.mtkjpay.MtkjpayApplication -
|
|
╔══════════════════════════════════════════════════════════╗
|
|
║ ║
|
|
║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║
|
|
║ ║
|
|
╚══════════════════════════════════════════════════════════╝
|
|
|
|
java.lang.IllegalArgumentException: Could not find class [com.mtkj.mtpay.config.PingPongProperties]
|
|
at org.springframework.util.ClassUtils.resolveClassName(ClassUtils.java:355)
|
|
at org.springframework.core.annotation.TypeMappedAnnotation.adapt(TypeMappedAnnotation.java:465)
|
|
at org.springframework.core.annotation.TypeMappedAnnotation.getValue(TypeMappedAnnotation.java:390)
|
|
at org.springframework.core.annotation.TypeMappedAnnotation.getAttributeValue(TypeMappedAnnotation.java:371)
|
|
at org.springframework.core.annotation.AbstractMergedAnnotation.getRequiredAttributeValue(AbstractMergedAnnotation.java:215)
|
|
at org.springframework.core.annotation.AbstractMergedAnnotation.getClassArray(AbstractMergedAnnotation.java:153)
|
|
at org.springframework.boot.context.properties.EnableConfigurationPropertiesRegistrar.lambda$getTypes$0(EnableConfigurationPropertiesRegistrar.java:55)
|
|
at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:273)
|
|
at org.springframework.core.annotation.MergedAnnotationsCollection$AnnotationsSpliterator.tryAdvance(MergedAnnotationsCollection.java:254)
|
|
at java.base/java.util.Spliterator.forEachRemaining(Spliterator.java:332)
|
|
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
|
|
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
|
|
at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
|
|
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
|
|
at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682)
|
|
at org.springframework.boot.context.properties.EnableConfigurationPropertiesRegistrar.getTypes(EnableConfigurationPropertiesRegistrar.java:57)
|
|
at org.springframework.boot.context.properties.EnableConfigurationPropertiesRegistrar.registerBeanDefinitions(EnableConfigurationPropertiesRegistrar.java:49)
|
|
at org.springframework.context.annotation.ImportBeanDefinitionRegistrar.registerBeanDefinitions(ImportBeanDefinitionRegistrar.java:86)
|
|
at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.lambda$loadBeanDefinitionsFromRegistrars$1(ConfigurationClassBeanDefinitionReader.java:376)
|
|
at java.base/java.util.LinkedHashMap.forEach(LinkedHashMap.java:721)
|
|
at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitionsFromRegistrars(ConfigurationClassBeanDefinitionReader.java:375)
|
|
at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitionsForConfigurationClass(ConfigurationClassBeanDefinitionReader.java:148)
|
|
at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitions(ConfigurationClassBeanDefinitionReader.java:120)
|
|
at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:428)
|
|
at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:289)
|
|
at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:349)
|
|
at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:118)
|
|
at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:775)
|
|
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:597)
|
|
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146)
|
|
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753)
|
|
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:455)
|
|
at org.springframework.boot.SpringApplication.run(SpringApplication.java:323)
|
|
at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:42)
|
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
|
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
|
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
|
|
at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50)
|
|
Caused by: java.lang.ClassNotFoundException: com.mtkj.mtpay.config.PingPongProperties
|
|
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
|
|
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
|
|
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)
|
|
at java.base/java.lang.Class.forName0(Native Method)
|
|
at java.base/java.lang.Class.forName(Class.java:467)
|
|
at org.springframework.boot.devtools.restart.classloader.RestartClassLoader.loadClass(RestartClassLoader.java:121)
|
|
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)
|
|
at java.base/java.lang.Class.forName0(Native Method)
|
|
at java.base/java.lang.Class.forName(Class.java:467)
|
|
at org.springframework.util.ClassUtils.forName(ClassUtils.java:304)
|
|
at org.springframework.util.ClassUtils.resolveClassName(ClassUtils.java:345)
|
|
... 38 common frames omitted
|
|
2025-12-26 10:53:11.107 [restartedMain] ERROR org.springframework.boot.SpringApplication - Application run failed
|
|
java.lang.IllegalArgumentException: Could not find class [com.mtkj.mtpay.config.PingPongProperties]
|
|
at org.springframework.util.ClassUtils.resolveClassName(ClassUtils.java:355)
|
|
at org.springframework.core.annotation.TypeMappedAnnotation.adapt(TypeMappedAnnotation.java:465)
|
|
at org.springframework.core.annotation.TypeMappedAnnotation.getValue(TypeMappedAnnotation.java:390)
|
|
at org.springframework.core.annotation.TypeMappedAnnotation.getAttributeValue(TypeMappedAnnotation.java:371)
|
|
at org.springframework.core.annotation.AbstractMergedAnnotation.getRequiredAttributeValue(AbstractMergedAnnotation.java:215)
|
|
at org.springframework.core.annotation.AbstractMergedAnnotation.getClassArray(AbstractMergedAnnotation.java:153)
|
|
at org.springframework.boot.context.properties.EnableConfigurationPropertiesRegistrar.lambda$getTypes$0(EnableConfigurationPropertiesRegistrar.java:55)
|
|
at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:273)
|
|
at org.springframework.core.annotation.MergedAnnotationsCollection$AnnotationsSpliterator.tryAdvance(MergedAnnotationsCollection.java:254)
|
|
at java.base/java.util.Spliterator.forEachRemaining(Spliterator.java:332)
|
|
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
|
|
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
|
|
at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
|
|
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
|
|
at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682)
|
|
at org.springframework.boot.context.properties.EnableConfigurationPropertiesRegistrar.getTypes(EnableConfigurationPropertiesRegistrar.java:57)
|
|
at org.springframework.boot.context.properties.EnableConfigurationPropertiesRegistrar.registerBeanDefinitions(EnableConfigurationPropertiesRegistrar.java:49)
|
|
at org.springframework.context.annotation.ImportBeanDefinitionRegistrar.registerBeanDefinitions(ImportBeanDefinitionRegistrar.java:86)
|
|
at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.lambda$loadBeanDefinitionsFromRegistrars$1(ConfigurationClassBeanDefinitionReader.java:376)
|
|
at java.base/java.util.LinkedHashMap.forEach(LinkedHashMap.java:721)
|
|
at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitionsFromRegistrars(ConfigurationClassBeanDefinitionReader.java:375)
|
|
at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitionsForConfigurationClass(ConfigurationClassBeanDefinitionReader.java:148)
|
|
at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitions(ConfigurationClassBeanDefinitionReader.java:120)
|
|
at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:428)
|
|
at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:289)
|
|
at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:349)
|
|
at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:118)
|
|
at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:775)
|
|
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:597)
|
|
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146)
|
|
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753)
|
|
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:455)
|
|
at org.springframework.boot.SpringApplication.run(SpringApplication.java:323)
|
|
at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:42)
|
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
|
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
|
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
|
|
at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50)
|
|
Caused by: java.lang.ClassNotFoundException: com.mtkj.mtpay.config.PingPongProperties
|
|
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
|
|
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
|
|
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)
|
|
at java.base/java.lang.Class.forName0(Native Method)
|
|
at java.base/java.lang.Class.forName(Class.java:467)
|
|
at org.springframework.boot.devtools.restart.classloader.RestartClassLoader.loadClass(RestartClassLoader.java:121)
|
|
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)
|
|
at java.base/java.lang.Class.forName0(Native Method)
|
|
at java.base/java.lang.Class.forName(Class.java:467)
|
|
at org.springframework.util.ClassUtils.forName(ClassUtils.java:304)
|
|
at org.springframework.util.ClassUtils.resolveClassName(ClassUtils.java:345)
|
|
... 38 common frames omitted
|
|
2025-12-26 10:53:11.107 [restartedMain] ERROR com.mtkj.mtkjpay.MtkjpayApplication -
|
|
╔══════════════════════════════════════════════════════════╗
|
|
║ ║
|
|
║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║
|
|
║ ║
|
|
╚══════════════════════════════════════════════════════════╝
|
|
|
|
java.lang.IllegalArgumentException: Could not find class [com.mtkj.mtpay.config.PingPongProperties]
|
|
at org.springframework.util.ClassUtils.resolveClassName(ClassUtils.java:355)
|
|
at org.springframework.core.annotation.TypeMappedAnnotation.adapt(TypeMappedAnnotation.java:465)
|
|
at org.springframework.core.annotation.TypeMappedAnnotation.getValue(TypeMappedAnnotation.java:390)
|
|
at org.springframework.core.annotation.TypeMappedAnnotation.getAttributeValue(TypeMappedAnnotation.java:371)
|
|
at org.springframework.core.annotation.AbstractMergedAnnotation.getRequiredAttributeValue(AbstractMergedAnnotation.java:215)
|
|
at org.springframework.core.annotation.AbstractMergedAnnotation.getClassArray(AbstractMergedAnnotation.java:153)
|
|
at org.springframework.boot.context.properties.EnableConfigurationPropertiesRegistrar.lambda$getTypes$0(EnableConfigurationPropertiesRegistrar.java:55)
|
|
at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:273)
|
|
at org.springframework.core.annotation.MergedAnnotationsCollection$AnnotationsSpliterator.tryAdvance(MergedAnnotationsCollection.java:254)
|
|
at java.base/java.util.Spliterator.forEachRemaining(Spliterator.java:332)
|
|
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
|
|
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
|
|
at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
|
|
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
|
|
at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682)
|
|
at org.springframework.boot.context.properties.EnableConfigurationPropertiesRegistrar.getTypes(EnableConfigurationPropertiesRegistrar.java:57)
|
|
at org.springframework.boot.context.properties.EnableConfigurationPropertiesRegistrar.registerBeanDefinitions(EnableConfigurationPropertiesRegistrar.java:49)
|
|
at org.springframework.context.annotation.ImportBeanDefinitionRegistrar.registerBeanDefinitions(ImportBeanDefinitionRegistrar.java:86)
|
|
at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.lambda$loadBeanDefinitionsFromRegistrars$1(ConfigurationClassBeanDefinitionReader.java:376)
|
|
at java.base/java.util.LinkedHashMap.forEach(LinkedHashMap.java:721)
|
|
at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitionsFromRegistrars(ConfigurationClassBeanDefinitionReader.java:375)
|
|
at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitionsForConfigurationClass(ConfigurationClassBeanDefinitionReader.java:148)
|
|
at org.springframework.context.annotation.ConfigurationClassBeanDefinitionReader.loadBeanDefinitions(ConfigurationClassBeanDefinitionReader.java:120)
|
|
at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:428)
|
|
at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:289)
|
|
at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:349)
|
|
at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:118)
|
|
at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:775)
|
|
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:597)
|
|
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146)
|
|
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753)
|
|
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:455)
|
|
at org.springframework.boot.SpringApplication.run(SpringApplication.java:323)
|
|
at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:42)
|
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
|
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
|
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
|
|
at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50)
|
|
Caused by: java.lang.ClassNotFoundException: com.mtkj.mtpay.config.PingPongProperties
|
|
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
|
|
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
|
|
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)
|
|
at java.base/java.lang.Class.forName0(Native Method)
|
|
at java.base/java.lang.Class.forName(Class.java:467)
|
|
at org.springframework.boot.devtools.restart.classloader.RestartClassLoader.loadClass(RestartClassLoader.java:121)
|
|
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)
|
|
at java.base/java.lang.Class.forName0(Native Method)
|
|
at java.base/java.lang.Class.forName(Class.java:467)
|
|
at org.springframework.util.ClassUtils.forName(ClassUtils.java:304)
|
|
at org.springframework.util.ClassUtils.resolveClassName(ClassUtils.java:345)
|
|
... 38 common frames omitted
|
|
2025-12-26 10:53:20.855 [restartedMain] ERROR o.s.b.diagnostics.LoggingFailureAnalysisReporter -
|
|
|
|
***************************
|
|
APPLICATION FAILED TO START
|
|
***************************
|
|
|
|
Description:
|
|
|
|
Field ossProperties in com.mtkj.mtpay.service.impl.OssServiceImpl required a bean of type 'com.mtkj.mtpay.config.AliyunOSSProperties' that could not be found.
|
|
|
|
The injection point has the following annotations:
|
|
- @org.springframework.beans.factory.annotation.Autowired(required=true)
|
|
|
|
|
|
Action:
|
|
|
|
Consider defining a bean of type 'com.mtkj.mtpay.config.AliyunOSSProperties' in your configuration.
|
|
|
|
2025-12-26 10:53:20.856 [restartedMain] ERROR com.mtkj.mtkjpay.MtkjpayApplication -
|
|
╔══════════════════════════════════════════════════════════╗
|
|
║ ║
|
|
║ ❌ MTKJ PAY 支付系统启动失败! ❌ ║
|
|
║ ║
|
|
╚══════════════════════════════════════════════════════════╝
|
|
|
|
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'productController': Unsatisfied dependency expressed through field 'ossService': Error creating bean with name 'ossServiceImpl': Unsatisfied dependency expressed through field 'ossProperties': No qualifying bean of type 'com.mtkj.mtpay.config.AliyunOSSProperties' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
|
|
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:772)
|
|
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:752)
|
|
at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:145)
|
|
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:493)
|
|
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1420)
|
|
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:600)
|
|
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:523)
|
|
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325)
|
|
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
|
|
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323)
|
|
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)
|
|
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:973)
|
|
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:946)
|
|
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:616)
|
|
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146)
|
|
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753)
|
|
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:455)
|
|
at org.springframework.boot.SpringApplication.run(SpringApplication.java:323)
|
|
at com.mtkj.mtkjpay.MtkjpayApplication.main(MtkjpayApplication.java:42)
|
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
|
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
|
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
|
|
at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50)
|
|
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'ossServiceImpl': Unsatisfied dependency expressed through field 'ossProperties': No qualifying bean of type 'com.mtkj.mtpay.config.AliyunOSSProperties' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
|
|
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:772)
|
|
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:752)
|
|
at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:145)
|
|
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:493)
|
|
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1420)
|
|
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:600)
|
|
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:523)
|
|
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:325)
|
|
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
|
|
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:323)
|
|
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)
|
|
at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254)
|
|
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1441)
|
|
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1348)
|
|
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:769)
|
|
... 23 common frames omitted
|
|
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.mtkj.mtpay.config.AliyunOSSProperties' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
|
|
at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoMatchingBeanFound(DefaultListableBeanFactory.java:1878)
|
|
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1404)
|
|
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1348)
|
|
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:769)
|
|
... 37 common frames omitted
|