@AutoConfigureAfter 没有按预期工作
@AutoConfigureAfter not working as desired
我有 3 个 spring-boot-starter 项目
其中一个自动配置 class 具有以下代码:
@Configuration
@ConditionalOnClass(value = Config.class)
@AutoConfigureAfter(value = {FileGeneratorConfig.class, FileUploaderConfig.class})
public class JobConfig
FileGeneratorConfig 和 FileUploaderConfig 也是自动配置 classes.
我原以为在 FileUploaderConfig 中创建的 bean 将首先创建。所以测试这个我在 JobConfig 和 FileUploaderConfig 中创建 bean 的方法中放置了一个断点。但是断点首先命中 JobConfig,这让我相信我的 @AutoConfigureAfter 没有工作。这是正确的假设吗?
我也在 FileUploaderConfig 中有这个:
@Bean
FileUtilContainer fileUtilContainer(FileUtilContainerProperties fileUtilContainerProperties){
return new FileUtilContainer(FileUtil.createDirectory(fileUtilContainerProperties.getArchive()),
FileUtil.createDirectory(fileUtilContainerProperties.getWorking()),
FileUtil.createDirectory(fileUtilContainerProperties.getConfirmation()),
FileUtil.createDirectory(fileUtilContainerProperties.getConfirmationProcessed()),
FileUtil.createDirectory(fileUtilContainerProperties.getError()),
FileUtil.createDirectory(fileUtilContainerProperties.getErrorProcessed()));
}
和 FileUtilContainerProperties:
@Component
@ConfigurationProperties(prefix = "batch.letter.directory", ignoreUnknownFields = false)
public class FileUtilContainerProperties
但它没有创建 FileUtilContainerProperties bean。我在这里遗漏了什么吗?
AutoConfigureAfter 控制处理配置文件和创建它们的 bean 定义的顺序。从这些定义创建 bean 的顺序是一个单独的问题,除其他事项外,还取决于 bean 之间存在的依赖关系。
我有 3 个 spring-boot-starter 项目
其中一个自动配置 class 具有以下代码:
@Configuration
@ConditionalOnClass(value = Config.class)
@AutoConfigureAfter(value = {FileGeneratorConfig.class, FileUploaderConfig.class})
public class JobConfig
FileGeneratorConfig 和 FileUploaderConfig 也是自动配置 classes.
我原以为在 FileUploaderConfig 中创建的 bean 将首先创建。所以测试这个我在 JobConfig 和 FileUploaderConfig 中创建 bean 的方法中放置了一个断点。但是断点首先命中 JobConfig,这让我相信我的 @AutoConfigureAfter 没有工作。这是正确的假设吗?
我也在 FileUploaderConfig 中有这个:
@Bean
FileUtilContainer fileUtilContainer(FileUtilContainerProperties fileUtilContainerProperties){
return new FileUtilContainer(FileUtil.createDirectory(fileUtilContainerProperties.getArchive()),
FileUtil.createDirectory(fileUtilContainerProperties.getWorking()),
FileUtil.createDirectory(fileUtilContainerProperties.getConfirmation()),
FileUtil.createDirectory(fileUtilContainerProperties.getConfirmationProcessed()),
FileUtil.createDirectory(fileUtilContainerProperties.getError()),
FileUtil.createDirectory(fileUtilContainerProperties.getErrorProcessed()));
}
和 FileUtilContainerProperties:
@Component
@ConfigurationProperties(prefix = "batch.letter.directory", ignoreUnknownFields = false)
public class FileUtilContainerProperties
但它没有创建 FileUtilContainerProperties bean。我在这里遗漏了什么吗?
AutoConfigureAfter 控制处理配置文件和创建它们的 bean 定义的顺序。从这些定义创建 bean 的顺序是一个单独的问题,除其他事项外,还取决于 bean 之间存在的依赖关系。