Spring Boot 2.3.1:缺少托管 beans
Spring Boot 2.3.1: managed beans missing
我从 Spring Boot 2.2.6.RELEASE
更新到 2.3.1.RELEASE
突然间,我的所有 @ManagedResources
bean 在 JMX 控制台中都丢失了,甚至所有 Spring 引导自己。然而,所有的 jolokia,java.lang,java.nio,org.apache.activemq 和 org.apache.logging.log4j2 都在那里。
有趣的是,只有当应用程序安装在服务器上时才会发生这种情况。当我从 IntelliJ 运行 它时,所有托管 bean 都在那里。
所以我怀疑 bean 的加载顺序有问题,但我真的不知道从哪里开始寻找。有没有人经历过这样的事情?
这是我的申请 class:
@SpringBootApplication(
scanBasePackageClasses = {
// Some shared @Component in a common module
com.example.convert.Import.class,
com.example.config.Import.class,
DispatcherApplication.class
},
// Since there are two datasources, they need to be configured manually
exclude = {DataSourceAutoConfiguration.class, JdbcRepositoriesAutoConfiguration.class}
)
@EnableScheduling
@EnableIntegrationGraphController
@EnableIntegrationManagement
@EnableMapRepositories(includeFilters = {@ComponentScan.Filter(type = FilterType.REGEX, pattern = ".+\.map\..+")})
@EnableIntegration
@EnableJms
@EnableRetry
@EnableConfigurationProperties(DispatcherProperties.class)
public class DispatcherApplication {
public static void main(String[] args) {
SpringApplication.run(DispatcherApplication.class, args);
}
}
某处(现在找不到)有人遇到组件扫描已完成的问题after/before一些 JMX 配置,但到目前为止,我还没有自定义任何 JMX 行为。
原来我居然在同一天从2.1.2.RELEASE
更新到2.2.6.RELEASE
然后又更新到2.3.1.RELEASE
和JMX is disabled since 2.2.0.M1
(see also: Spring Boot 2.2 Release Notes.
因此,现在需要spring.jmx.enabled=true
。
我从 Spring Boot 2.2.6.RELEASE
更新到 2.3.1.RELEASE
突然间,我的所有 @ManagedResources
bean 在 JMX 控制台中都丢失了,甚至所有 Spring 引导自己。然而,所有的 jolokia,java.lang,java.nio,org.apache.activemq 和 org.apache.logging.log4j2 都在那里。
有趣的是,只有当应用程序安装在服务器上时才会发生这种情况。当我从 IntelliJ 运行 它时,所有托管 bean 都在那里。
所以我怀疑 bean 的加载顺序有问题,但我真的不知道从哪里开始寻找。有没有人经历过这样的事情?
这是我的申请 class:
@SpringBootApplication(
scanBasePackageClasses = {
// Some shared @Component in a common module
com.example.convert.Import.class,
com.example.config.Import.class,
DispatcherApplication.class
},
// Since there are two datasources, they need to be configured manually
exclude = {DataSourceAutoConfiguration.class, JdbcRepositoriesAutoConfiguration.class}
)
@EnableScheduling
@EnableIntegrationGraphController
@EnableIntegrationManagement
@EnableMapRepositories(includeFilters = {@ComponentScan.Filter(type = FilterType.REGEX, pattern = ".+\.map\..+")})
@EnableIntegration
@EnableJms
@EnableRetry
@EnableConfigurationProperties(DispatcherProperties.class)
public class DispatcherApplication {
public static void main(String[] args) {
SpringApplication.run(DispatcherApplication.class, args);
}
}
某处(现在找不到)有人遇到组件扫描已完成的问题after/before一些 JMX 配置,但到目前为止,我还没有自定义任何 JMX 行为。
原来我居然在同一天从2.1.2.RELEASE
更新到2.2.6.RELEASE
然后又更新到2.3.1.RELEASE
和JMX is disabled since 2.2.0.M1
(see also: Spring Boot 2.2 Release Notes.
因此,现在需要spring.jmx.enabled=true
。