linux部署4.7.0版本,gateway启动失败

Blade 未结 1 14

一、该问题的重现步骤是什么?

1. 版本升级到4.7.0,部署到linux服务器gateway服务报错,其他服务正常

2. 

3.


二、你期待的结果是什么?实际看到的又是什么?


三、你正在使用的是什么产品,什么版本?在什么操作系统上?

bladeX4.7.0

linux操作系统

四、请提供详细的错误堆栈信息,这很重要。

Property source 'applicationConfig: [classpath:/bootstrap.yml]':

Key: spring.cloud.gateway.discovery.locator.enabled

Line: 9

Replacement: spring.cloud.gateway.server.webflux.discovery.locator.enabled

Property source 'Config resource 'class path resource [bootstrap.yml]' via location 'optional:classpath:/'':

Key: spring.cloud.gateway.discovery.locator.enabled

Line: 9

Replacement: spring.cloud.gateway.server.webflux.discovery.locator.enabled

Each configuration key has been temporarily mapped to its replacement for your convenience. To silence this warning, please update your configuration to use the new keys.

            ______  _             _       ___   ___

            | ___ \| |           | |      \  \ /  /

            | |_/ /| |  __ _   __| |  ___  \  V  /

            | ___ \| | / _` | / _` | / _ \   > <

            | |_/ /| || (_| || (_| ||  __/ /  .  \

            \____/ |_| \__,_| \__,_| \___|/__/ \__\

:: BladeX :: blade-gateway:test :: Running SpringBoot 3.5.6 :: 

2025-11-17T16:45:25.815+08:00  INFO 1 --- [blade-gateway] [           main] o.s.gateway.GateWayApplication           : The following 1 profile is active: "test"

2025-11-17T16:45:25.840+08:00  WARN 1 --- [blade-gateway] [           main] c.a.c.n.c.NacosConfigDataLoader          : [Nacos Config] config[dataId=blade-gateway-test.yaml, group=DEFAULT_GROUP] is empty

2025-11-17T16:45:25.841+08:00  INFO 1 --- [blade-gateway] [           main] c.a.c.n.c.NacosConfigDataLoader          : [Nacos Config] Load config[dataId=blade-test.yaml, group=DEFAULT_GROUP] success

2025-11-17T16:45:25.841+08:00  INFO 1 --- [blade-gateway] [           main] c.a.c.n.c.NacosConfigDataLoader          : [Nacos Config] Load config[dataId=blade.yaml, group=DEFAULT_GROUP] success

2025-11-17T16:45:26.529+08:00  WARN 1 --- [blade-gateway] [           main] onfigReactiveWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanDefinitionStoreException: I/O failure while processing configuration class [org.springblade.core.tool.config.BladeConverterConfiguration]

2025-11-17T16:45:26.539+08:00  WARN 1 --- [blade-gateway] [           main] o.s.b.c.p.m.PropertiesMigrationListener  : 

The use of configuration keys that have been renamed was found in the environment:

Property source 'applicationConfig: [classpath:/bootstrap.yml]':

Key: spring.cloud.gateway.discovery.locator.enabled

Line: 9

Replacement: spring.cloud.gateway.server.webflux.discovery.locator.enabled

Property source 'Config resource 'class path resource [bootstrap.yml]' via location 'optional:classpath:/'':

Key: spring.cloud.gateway.discovery.locator.enabled

Line: 9

Replacement: spring.cloud.gateway.server.webflux.discovery.locator.enabled

Each configuration key has been temporarily mapped to its replacement for your convenience. To silence this warning, please update your configuration to use the new keys.

2025-11-17T16:45:26.547+08:00  INFO 1 --- [blade-gateway] [           main] .s.b.a.l.ConditionEvaluationReportLogger : 

Error starting ApplicationContext. To display the condition evaluation report re-run your application with 'debug' enabled.

2025-11-17T16:45:26.589+08:00 ERROR 1 --- [blade-gateway] [           main] o.s.boot.SpringApplication               : Application run failed

org.springframework.beans.factory.BeanDefinitionStoreException: I/O failure while processing configuration class [org.springblade.core.tool.config.BladeConverterConfiguration]

at org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass(ConfigurationClassParser.java:286) ~[spring-context-6.2.11.jar!/:6.2.11]

at org.springframework.context.annotation.ConfigurationClassParser.processImports(ConfigurationClassParser.java:617) ~[spring-context-6.2.11.jar!/:6.2.11]

at org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorGroupingHandler.lambda$processGroupImports$1(ConfigurationClassParser.java:850) ~[spring-context-6.2.11.jar!/:6.2.11]

at java.base/java.lang.Iterable.forEach(Iterable.java:75) ~[na:na]

at org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorGroupingHandler.processGroupImports(ConfigurationClassParser.java:847) ~[spring-context-6.2.11.jar!/:6.2.11]

at org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorHandler.process(ConfigurationClassParser.java:817) ~[spring-context-6.2.11.jar!/:6.2.11]

at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:198) ~[spring-context-6.2.11.jar!/:6.2.11]

at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:418) ~[spring-context-6.2.11.jar!/:6.2.11]

at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:290) ~[spring-context-6.2.11.jar!/:6.2.11]

at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:349) ~[spring-context-6.2.11.jar!/:6.2.11]

at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:118) ~[spring-context-6.2.11.jar!/:6.2.11]

at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:791) ~[spring-context-6.2.11.jar!/:6.2.11]

at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:609) ~[spring-context-6.2.11.jar!/:6.2.11]

at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.refresh(ReactiveWebServerApplicationContext.java:66) ~[spring-boot-3.5.6.jar!/:3.5.6]

at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:752) ~[spring-boot-3.5.6.jar!/:3.5.6]

at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:439) ~[spring-boot-3.5.6.jar!/:3.5.6]

at org.springframework.boot.SpringApplication.run(SpringApplication.java:318) ~[spring-boot-3.5.6.jar!/:3.5.6]

at org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:149) ~[spring-boot-3.5.6.jar!/:3.5.6]

at org.springblade.core.launch.BladeApplication.run(BladeApplication.java:59) ~[blade-core-launch-4.7.0.RELEASE.jar!/:4.7.0.RELEASE]

at org.springblade.gateway.GateWayApplication.main(GateWayApplication.java:45) ~[!/:na]

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[na:na]

at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]

at java.base/java.lang.reflect.Method.invoke(Method.java:568) ~[na:na]

at org.springframework.boot.loader.launch.Launcher.launch(Launcher.java:91) ~[app.jar:na]

at org.springframework.boot.loader.launch.Launcher.launch(Launcher.java:53) ~[app.jar:na]

at org.springframework.boot.loader.launch.JarLauncher.main(JarLauncher.java:58) ~[app.jar:na]

Caused by: java.io.FileNotFoundException: class path resource [org/springframework/web/servlet/config/annotation/WebMvcConfigurer.class] cannot be opened because it does not exist

at org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:215) ~[spring-core-6.2.11.jar!/:6.2.11]

at org.springframework.core.type.classreading.SimpleMetadataReader.getClassReader(SimpleMetadataReader.java:54) ~[spring-core-6.2.11.jar!/:6.2.11]

at org.springframework.core.type.classreading.SimpleMetadataReader.<init>(SimpleMetadataReader.java:48) ~[spring-core-6.2.11.jar!/:6.2.11]

at org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:103) ~[spring-core-6.2.11.jar!/:6.2.11]

at org.springframework.boot.type.classreading.ConcurrentReferenceCachingMetadataReaderFactory.createMetadataReader(ConcurrentReferenceCachingMetadataReaderFactory.java:98) ~[spring-boot-3.5.6.jar!/:3.5.6]

at org.springframework.boot.type.classreading.ConcurrentReferenceCachingMetadataReaderFactory.getMetadataReader(ConcurrentReferenceCachingMetadataReaderFactory.java:85) ~[spring-boot-3.5.6.jar!/:3.5.6]

at org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:81) ~[spring-core-6.2.11.jar!/:6.2.11]

at org.springframework.boot.type.classreading.ConcurrentReferenceCachingMetadataReaderFactory.getMetadataReader(ConcurrentReferenceCachingMetadataReaderFactory.java:75) ~[spring-boot-3.5.6.jar!/:3.5.6]

at org.springframework.context.annotation.ConfigurationClassParser.asSourceClass(ConfigurationClassParser.java:711) ~[spring-context-6.2.11.jar!/:6.2.11]

at org.springframework.context.annotation.ConfigurationClassParser$SourceClass.getInterfaces(ConfigurationClassParser.java:1060) ~[spring-context-6.2.11.jar!/:6.2.11]

at org.springframework.context.annotation.ConfigurationClassParser.processInterfaces(ConfigurationClassParser.java:441) ~[spring-context-6.2.11.jar!/:6.2.11]

at org.springframework.context.annotation.ConfigurationClassParser.doProcessConfigurationClass(ConfigurationClassParser.java:385) ~[spring-context-6.2.11.jar!/:6.2.11]

at org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass(ConfigurationClassParser.java:281) ~[spring-context-6.2.11.jar!/:6.2.11]

... 26 common frames omitted

五、若有更多详细信息,请在下面提供。

1条回答
  • 报错原因是这个:

    Caused by: java.io.FileNotFoundException: class path resource [org/springframework/web/servlet/config/annotation/WebMvcConfigurer.class] cannot be opened because it does not exist

    检查下你加的依赖,如果带spring-web就会报错,把依赖排除或者换种别的方式实现。

    0 讨论(0)
提交回复