我正在使用 spring-cloud-aws-autoconfigure:2.1.0.RELEASE
连接到 AWS。但是,当应用程序在 AWS 以外的环境中运行时,我不希望进行自动配置。
我尝试按照建议关闭自动配置 here和 here使用 java 配置类,以及我的 yml 文件中的 spring.autoconfigure.excludes
属性,如下所示:
spring:
autoconfigure:
exclude:
- org.springframework.cloud.aws.autoconfigure.context.ContextCredentialsAutoConfiguration
- org.springframework.cloud.aws.autoconfigure.context.ContextInstanceDataAutoConfiguration
- org.springframework.cloud.aws.autoconfigure.context.ContextStackAutoConfiguration
- org.springframework.cloud.aws.autoconfigure.messaging.MessagingAutoConfiguration
但这些解决方案似乎都不起作用。自动配置仍然发生,因此应用程序无法启动。
最佳答案
找到了解决方案:我将其直接添加到我的主应用程序类中:
import org.springframework.cloud.aws.autoconfigure.context.*;
@SpringBootApplication
@EnableAutoConfiguration(exclude = {
ContextCredentialsAutoConfiguration.class,
ContextInstanceDataAutoConfiguration.class,
ContextRegionProviderAutoConfiguration.class,
ContextResourceLoaderAutoConfiguration.class,
ContextStackAutoConfiguration.class,
MailSenderAutoConfiguration.class,
})
public class MyApplication {
public static void main(String[] args) {
SpringApplication.run(MyApplication.class, args);
}
}
关于java - 关闭 Spring Boot AWS 自动配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54770577/