0

1、当我的字典树喜欢这些时,出现“@EnableAsync annotation metadata was not injection”的错误。</p>

在此处输入图像描述 在此处输入图像描述

2,但是当我的字典树喜欢这样时,错误不会发生。

在此处输入图像描述

3,当我用application.xml连接Bean时,字典树喜欢第一段,但错误也没有发生。

在此处输入图像描述

所以我如此确认的是@ComponentScan 在没有application.xml 的情况下连接Bean 时的工作?

4

1 回答 1

1

当一个类不包含包声明时,它被认为在“默认包”(src.main.java)中。通常不鼓励使用“默认包”,应避免使用。它可能会导致使用 @ComponentScan、@ConfigurationPropertiesScan、@EntityScan 或 @SpringBootApplication 注释的 Spring Boot 应用程序出现特定问题,因为每个 jar 中的每个类都被读取。

Spring Boot 支持基于 Java 的配置。尽管可以将 SpringApplication 与 XML 源一起使用,但我们通常建议您的主要源是单个 @Configuration 类。通常,定义主要方法的类是主要@Configuration 的良好候选者。

这是第一次制作 Spring 应用程序时的经典错误,最好将所有类放在一个包中,永远不要将你的类放在“默认”(src.main.java) 包中。

从“2. 构建您的代码”一章到“3. 配置类”阅读更多内容:

https://docs.spring.io/spring-boot/docs/current/reference/html/using-spring-boot.html#using-boot-configuration-classes

于 2020-09-14T08:22:50.173 回答