簡體   English   中英

Spring Boot:簡單地忽略配置類並且不加載

[英]Spring Boot: Configuration Class is simply ignored and not loaded

我在@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中啟動。

Ther服務有幾乎相同的,非常小的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類的子包旁邊或其中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM