如何调试@Scheduled spring boot方法或服务方法?

时间:2019-04-23 09:48:34

标签: java spring eclipse spring-boot debugging

我有一个现有的spring boot应用程序,现在我需要调试一些方法。因此,这些方法是@Scheduled或在服务类中,它们会由应用程序自动调用。

是否可以通过调试来调用这些方法?还是有其他方法可以在不更改源代码的情况下做到这一点?我可以添加ApplicationRunner或CommandLineRunner,但随后需要更改App来源。

谢谢

1 个答案:

答案 0 :(得分:1)

您可以使用SpEL将@Scheduled批注的值外部化。您仍然需要更改代码,但是之后它是可配置的,并且您可以更改cron而不更改代码。这样,您也可以使用其他cron来启动它进行调试。

如果您(由于某种原因)无法更改代码,则可以使用远程调试,但是您需要为此重启应用程序并添加本文档中提到的参数:https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#using-boot-running-as-a-packaged-application < / p>

但是那样,根据cron或间隔,调用计划的方法可能要花费很多时间。