服务器启动后,如何在Spring Boot中启动服务?
我有一个在jetty服务器启动之前无法激活的服务(bean) 有没有一种方法可以通过Spring/Spring Boot轻松实现这一点 问候, Jakob如果您使用JavaConfig(我假设您使用Spring Boot),那么您可以将DependsOn注释与HealthEndpoint的bean名称一起使用(在默认的自动配置中,HealthEndpoint的bean名称是HealthEndpoint):服务器启动后,如何在Spring Boot中启动服务?,spring,spring-boot,Spring,Spring Boot,我有一个在jetty服务器启动之前无法激活的服务(bean) 有没有一种方法可以通过Spring/Spring Boot轻松实现这一点 问候, Jakob如果您使用JavaConfig(我假设您使用Spring Boot),那么您可以将DependsOn注释与HealthEndpoint的bean名称一起使用(在默认的自动配置中,HealthEndpoint的bean名称是HealthEndpoint): 您可以让您的服务bean实现并将其设置为自动启动。只有在刷新应用程序上下文后,它才会启动
您可以让您的服务bean实现并将其设置为自动启动。只有在刷新应用程序上下文后,它才会启动 顺便说一句,原因是该服务侦听管理服务/运行状况,并且在该服务尚未启动时失败。该服务是遗留代码,很难重新实现。谢谢你的建议,但这似乎没有任何区别。问题是服务调用localhost:/health来验证服务器是否已启动并正在运行。HealthEndPoint似乎是在服务器实际启动之前的某个时间初始化的。我想答案可能是使用AOP。有没有人有过类似案例中使用这种方法的经验?您可以在bean jettyEmbeddedServletContainerFactory中试用。我不明白AOP在这里能帮到你什么。
@Bean
@DependsOn("healthEndpoint")
public YourService yourService() {}