[英]Spring Boot - EnableAutoConfiguration with Exclude not working
[英]Spring Boot: how can @EnableAutoConfiguration be re-used?
目前我正在指定我的Spring Boot自动配置以下列方式排除:
@EnableAutoConfiguration(exclude = { ... })
@ComponentScan("my.company")
class Application {
static void main(String[] args) {
...
}
}
由于Spring Boot将在整个公司范围内使用,我们希望提供一些默认配置类,如MyCompanyDefaultConfiguration
和一些自动配置排除,并且仅在需要时指定每个应用程序的添加排除。
像这样的东西:
@Import(MyCompanyDefaultConfiguration.class)
@EnableAutoConfiguration(exclude = { /* application specific excludes */ })
class Application {
static void main(String[] args) {
...
}
}
@EnableAutoConfiguration(exclude = { /* company-wide excludes */ })
@ComponentScan("my.company")
class MyCompanyDefaultConfiguration {
...
}
我已经读过某个地方,这不起作用,因为每个应用程序应该只有一个@EnableAutoConfiguration
注释,因为Spring Boot只会考虑首先找到的注释。 在这种情况下,Application类上的那个。
考虑到这一限制,以可重用的方式组织此配置的解决方案是什么?
制作带注释的注释,如@EnableAutoConfiguration
本身是带注释的注释。
@EnableAutoConfiguration(exclude = { /* application specific excludes */ })
public @interface MyCompanyEnableAutoConfiguration {
}
并使用它
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.