我需要在spring boot中每9小时运行一次作业。我使用@Scheduled(cron=“0*/9***”)来运行作业。但是当运行应用程序时,我得到的错误是“遇到无效的@Scheduled method”数据:Cron表达式必须由6个字段组成”
拜托谁能帮帮我
如果您必须依赖应用程序启动时间,那么您不应该使用cron,而应该使用fixedDelay
@Scheduled(fixedDelay = 9 * 60 * 60 * 1000) // 9 hours in milliseconds
Spring使用扩展的cron语法:
来自@计划文档
一个类似cron的表达式,扩展了通常的UN*X定义,以包括第二个、分钟、小时、月的某一天、月的某一天和星期的某一天的触发器。例如,“0****MON-FRI”表示在工作日每分钟一次(在一分钟的顶部-第0秒)。
从左向右读取的字段解释如下。
特殊值“-”表示禁用的cron触发器,主要用于
您可以使用此站点查找正确的cron表达式。
根据该网站,请尝试以下cron表达式:
@Scheduled(cron = "0 0 * ? * *")
也试试这个作为替代方案:
@Scheduled(cron = "0 0 */1 * * *")
我正在使用Windows server 2008 r2我安排了一项任务,每天10:00开始,运行8小时。如果服务器重新启动并且时间在10-18之间,那么任务应该尽快开始,否则它不应该运行。 如果我在启动时设置触发器,它随时启动。 如果我设置了“尽快运行”选项并且服务器在启动时没有工作,那么当服务器启动时,任务就会启动,如果任务“今天”已经启动,则不会自动重新启动。 所以我问你的建议:是否可以仅使用
我在Spring 3中使用@Scheduled annotation。我需要每周或每两周运行一些任务,所以我使用cron表达式作为参数,例如。 我的问题是,如果我将创建必须每7天运行一次的计划任务,并且在第6天我将重新启动服务器(与战争重新部署),它会重置这个计划任务(我需要再次等待7天)还是它会保存其状态并在第7天触发此任务?
我希望payara服务器作为服务运行。我以sudo的身份登录asadmin,并使用create-service命令。给出了以下输出。 这将在 /etc/init.d/ 文件夹中创建payara_production脚本,但一旦重新启动计算机,就不会执行此脚本。我必须手动启动payara才能运行它。 “您已经创建了服务,但是您需要自己启动它”是什么意思,我在之前使用的GlassFish版本中没有类似
问题内容: 我有一个flask应用程序,目前正在以以下方式启动: 当我运行此脚本时,它通过打印成功执行: 但是它永远不会返回,如果我执行CTRL-C,服务器将停止。我正在尝试将其部署到生产环境中,并希望在后台运行此启动,只要服务器启动,进程就可以启动。 做这个的最好方式是什么? 问题答案: 可能是使其在后台运行的最简单方法。就是说,如果你要将其转入生产环境(如@LukasGraf所提到的那样,则不
我正在使用 Windows 服务器 2016 数据中心。每当服务器重新启动时,我在任务计划程序中的计划任务总是停止运行。只有在我手动进入应用程序并重新键入我的用户帐户密码后,它才会再次开始工作。这是设置还是条件问题?
我正在使用Spring Boot注册服务器(Eureka服务器)。目前它正在使用以下配置。 项目名称:注册服务 内部主要方式:系统。setProperty(“spring.config.name”、“注册服务”); "yml file": 文件名:注册-服务内容: 通过以上配置,应用程序开始在2323上运行。但如果我换了Spring。配置。名称,它不工作,开始给连接拒绝异常。 > 为什么会这样?即