在Spring Boot应用程序中,我担心AutoConfigurations也会被传递依赖项触发。
可以按照Disable Spring Boot AutoConfiguration for transitive dependencies
中的说明关闭特定的自动配置但我如何知道哪些自动配置已被激活?启动时似乎没有一致的激活记录。我刚刚注意到VelocityAutoConfiguration已在我的应用程序中激活,我可以禁用它,但它让我担心在我不知情的情况下激活其他自动配置。
答案 0 :(得分:3)
绝对要注意那些传递依赖。
您可以通过5种或更多种方式启用或查看@EnableAutoConfiguration
报告。该报告将向您显示:
作为应用程序参数
--debug
作为VM参数
-Ddebug
作为环境变量
export DEBUG=true // UNIX based
set DEBUG=true // Windows based
通过向application.properties
debug=true
调整application.properties
logging.level.=debug
在application.properties
logging.level.package.org.springframework.boot.autoconfigure.logging.AutoConfigurationReportLoggingInitializer=debug
答案 1 :(得分:2)
使用--debug
启动应用程序将记录一个自动配置报告,该报告显示启动期间考虑的每个自动配置类以及是否已激活。列为正匹配的每个类都已激活,并且列为负匹配的每个类都未激活。
如果您的应用程序使用Spring Boot的Actuator(它依赖org.springframework.boot:spring-boot-starter-actuator
),那么,如问题评论中所述,您还可以使用HTTP访问HTTP报告/autoconfig
端点。