Raf*_*zcz 6 java spring spring-mvc
我在将外部库与 Spring 集成时遇到问题。它包含一个用 注释的类@Configuration,它有一个用 注释的方法@Bean。我不希望它被实例化(它不需要并且引入了对Spring Boot 的依赖,我不使用它。
不幸的是,这个带@Configuration注释的类在库的其他地方使用(类类型需要,而不是接口类型,所以我需要准确地实例化这个类)。
我从自动扫描中排除了它的包,我没有直接导入它。只需手动构建它并在自己的配置中注册为 bean。
所以,简而言之 - 我需要注册一个 bean,但将它从注释扫描中排除(不处理它的注释@Bean方法)。有什么办法可以做到这一点?
如果你的意思是你的maven gradle中有库,那么你可以排除spring bean的初始化。我发现从 @ComponentScan 中排除 @Component
@Configuration
@EnableSpringConfigured
@ComponentScan(
basePackages = {"com.example"},
excludeFilters = {
@ComponentScan.Filter(
type = FilterType.ASSIGNABLE_TYPE,
value = Foo.class)})
public class MySpringConfiguration {
}
Run Code Online (Sandbox Code Playgroud)
如果您不想包含传递依赖项,因此您不希望您的依赖项添加它使用的其他依赖项,则必须将它们从您的依赖项中排除(在 maven、gradle 中)。
| 归档时间: |
|
| 查看次数: |
7016 次 |
| 最近记录: |