【问题标题】:Run a jar file using windows scheduler使用 Windows 调度程序运行 jar 文件
【发布时间】:2013-03-24 21:28:48
【问题描述】:

我有 jar 文件,我想从 windows 7 中的 windows 调度程序运行它

我在路径/脚本中给出了java.exe 的路径,在参数字段中给出了-jar c:\abc\ab.jar。

但它没有运行。我也曾在 bat 文件的帮助下尝试过,但它没有运行。 运行jar文件需要做什么?

我的 jar 文件创建文件并更新数据库。

【问题讨论】:

    标签: windows-7 scheduled-tasks executable-jar


    【解决方案1】:

    步骤 0:设置

    在application.properties 中添加app.schedule.externally_managed=true

    第 1 步:创建新任务

    点击创建

    提供详细信息

    第 2 步:触发器详细信息

    第 3 步:操作详情

    第 4 步:操作

    第 5 步:查看任务详情

    应用程序被调用并关闭

    请参阅this 和this 了解更多详情

    【讨论】:

      【解决方案2】:

      创建Jar文件或bat文件

      创建Jar文件>项目右键>导出>可运行Jar文件>目的地>运行并检查

      现在转到任务计划程序并按照以下步骤使用 Windows 计划程序系统地执行您的 jar/bat 文件。

      >

      >

      >

      >

      >

      >

      【讨论】:

        【解决方案3】:

        从任务计划程序运行一个 java jar(Windows 7 Professional 64 位)

        我会将其配置为每 5 分钟运行一次。

        第 1 步,安装 java,确保它在命令行中可用

        您应该能够从裸 cmd 命令行运行您的 java jar。像这样指定完整的java目录:(这是我使用的命令)

        C:\ProgramData\Oracle\Java\javapath\java.exe -jar C:\repo\curium.jar
        

        第 2 步,打开任务调度器:

        在开始菜单搜索栏中,搜索“计划程序”,应该会弹出“任务计划程序”。它隐藏在控制面板中:控制面板->系统和安全->管理工具->任务计划程序。

        第三步,新建一个定时任务:

        在左窗格中,右键单击“任务计划程序库”。选择:“新建基本任务”。给它任何名字。

        选择下一步。点击“每日”,(每分钟重新运行的配置稍后进行)。

        选择下一步。每 1 天重复一次。让它从现在开始 5 分钟。选择下一步。单击“启动程序”。

        第 4 步,配置您的 java 以运行:

        在“程序/脚本”框中输入您的 java 的完整路径,您的路径可能不同。使用 cmd 命令仔细检查 where java

        C:\ProgramData\Oracle\Java\javapath\java.exe
        

        在“添加参数”框中输入:

        -jar C:\repo\curium.jar
        

        点击下一步,点击完成。

        第 5 步,右键单击新任务以进行进一步配置:

        右键单击您的项目 -> 属性。

        选择气泡:“无论用户是否登录都运行”

        在“触发器”标签下。选择您的每日任务并选择编辑。

        第 6 步,配置重复任务触发器

        开始任务:“按计划”。

        选择每重复一次任务:“5 分钟”。选择启用的复选框。单击确定。保存。

        系统将提示您输入 Windows 用户名和密码。添加并按 OK。

        第 7 步,确保其正常工作

        等待 5 分钟以使其运行。或者通过右键 -> 运行来强制运行它。

        右键单击您的任务,选择属性。选择“历史”标签。

        应该有一行显示它运行的时间。如果您想知道它是否成功完成,您必须将输出通过管道传输到日志文件。

        第 8 步,看看它是否在重新启动后仍然存在

        重新启动计算机,看看它是否保持开启状态。如果是,你就完成了。

        【讨论】:

        • 不错。您每 5 分钟重复一次任务,我认为您输入了“spring.jpa.hibernate.ddl-auto=none”,因此每次运行时数据库都没有变化。但是,当某些记录更新使应用程序崩溃并停止时会发生什么。因此,在每次预定的运行中,它都会崩溃并停止。有什么办法可以处理吗?
        • 谢谢埃里克!它工作得很好!只是为了补充您的答案,如果有人出于任何原因想要将 sysout 和 syserr 转发到日志文件,您不能在任务计划程序参数上执行此操作,因此只需创建一个简单的批处理文件,如下所示:@echo off java -jar abc.jar >> ..\logs\abc.log 2>&1 并从任务计划程序同理:C:\abc\abc.bat
        【解决方案4】:

        如果您的 JAR 创建文件,我认为您只需在创建任务时在 Start in 字段中指定一个工作目录。例如:

        • 程序脚本: C:\Program Files\Java\jre7\bin\java.exe
        • 添加参数: -jar c:\abc\ab.jar
        • 开始于: c:\abc

        【讨论】:

        • 程序脚本:C:\Program Files\Java\jre7\bin\java.exe 应使用双引号 (" "),如 "C:\Program Files\Java\jre7\bin\java .exe”,因为文件夹名称 program Files 在其名称之间包含空格。
        • 我的问题的正确解决方案!谢谢!顺便说一句,不要忘记“”
        猜你喜欢
        • 2013-08-17
        • 1970-01-01
        • 2020-06-04
        • 2012-02-03
        • 1970-01-01
        • 2013-06-06
        • 2010-09-28
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多