gpt4 book ai didi

java - Spring 启动 : Configuration Class is simply ignored and not loaded

转载 作者:IT老高 更新时间:2023-10-28 13:44:45 25 4
gpt4 key购买 nike

我的一些 @SpringBootApplication 的类路径中有以下 @Configuration 类:

@Configuration
@Import({MainConfig.class, RestConfig.class})
public class ApiConfig {

@Bean
@Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)
public Client client() throws ExecutionException, InterruptedException {
return service.create(Client.class);
}

}

我有两个使用此配置的服务(具有不同名称的 Client 类)。

服务 1 正确启动并加载此配置。我可以在启动过程中看到 ApiConfig 类型的 bean 被急切地初始化。

服务2启动不正确:上面的配置类被简单的忽略,没有初始化。

服务在不同的 JVM 中启动。

其他服务具有几乎相同的非常小的 application.properties 文件:

spring.application.name=xxx-api
server.port=0
eureka.name=xxx.api
# Only for reading properties from a central location
context.initializer.classes=com.package.contextClass

我什至不确定我可以在问题中写入什么样的附加信息。我已经浏览了几个小时的日志,看不出有什么区别,只是它明显忽略了我的 @Configuration 类。

以前有人遇到过这个问题吗?

最佳答案

@SpringBootApplication 注解(或者更准确地说是推断的@ComponentScan 注解)默认只扫描被注解的类旁边和下面的类路径。

因此,您的配置类必须放在 Application 类的旁边或子包中。

关于java - Spring 启动 : Configuration Class is simply ignored and not loaded,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41003355/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com