Windows 7 使用windows调度程序运行jar文件

Windows 7 使用windows调度程序运行jar文件,windows-7,scheduled-tasks,executable-jar,Windows 7,Scheduled Tasks,Executable Jar,我有一个jar文件,我想从Windows7中的windows调度程序运行它 我在path/script中给出了java.exe的路径,在arguments字段中给出了-jar c:\abc\ab.jar 但它没有运行。我也尝试过使用bat文件,但它没有运行。 运行jar文件需要做什么 我的jar文件创建文件并更新数据库。如果您的jar创建文件,我认为您只需在创建任务时在开始于字段中指定一个工作目录即可。例如: 程序脚本:C:\ProgramFiles\Java\jre7\bin\Java.ex

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

我在path/script中给出了
java.exe
的路径,在arguments字段中给出了
-jar c:\abc\ab.jar

但它没有运行。我也尝试过使用bat文件,但它没有运行。 运行jar文件需要做什么


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

如果您的jar创建文件,我认为您只需在创建任务时在开始于字段中指定一个工作目录即可。例如:

  • 程序脚本:
    C:\ProgramFiles\Java\jre7\bin\Java.exe
  • 添加参数:
    -jar c:\abc\ab.jar
  • 开始于:
    c:\abc
从任务计划程序(Windows 7 Professional 64位)运行java jar 我将配置它每5分钟运行一次

步骤1,安装java,确保它可以从命令行获得

您应该能够从裸cmd命令行运行javajar。如下所示指定完整的java目录:(这是我使用的命令)

第2步,打开任务计划程序:

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

第3步,创建新的计划任务:

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

选择下一步。单击“每日”(每分钟重新运行的配置将在以后完成)

选择下一步。每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步,查看它是否能在重新启动后继续运行


重新启动计算机,查看它是否保持打开状态。如果是这样,那么就完成了。

创建Jar文件或bat文件

创建Jar文件>项目右键单击>导出>可运行Jar文件>目标>运行并检查

现在转到任务调度器,并按照以下步骤使用Windows调度器系统地执行jar/bat文件

>

>

>

>

>

>

第0步:设置

application.properties中添加
app.schedule.externally\u managed=true

步骤1:创建新任务 单击创建

提供细节

步骤2:触发器详细信息

步骤3:行动细节

步骤4:行动

步骤5:查看任务详细信息

应用程序被调用并关闭


有关更多详细信息,请参阅和

Program script:C:\Program Files\Java\jre7\bin\Java.exe应使用双引号(“”),如“C:\Program Files\Java\jre7\bin\Java.exe”,因为文件夹名Program Files在其名称之间包含空格。解决我的问题的正确方法!谢谢顺便说一句,别忘了“好”。您每5分钟重复一次这个任务,我想您会把“spring.jpa.hibernate.ddl auto=none”放在这里,这样每次运行时数据库都不会发生变化。但当一些记录更新使应用程序崩溃并停止时会发生什么呢。因此,在每一次预定运行中,它都会崩溃并停止。有办法处理吗?谢谢Eric!它工作得很好!为了补充您的答案,如果任何人出于任何原因想要将sysout和syserr转发到日志文件,您不能在任务调度器参数上执行此操作,因此只需创建一个简单的批处理文件,如下所示:
@echo off java-jar abc.jar>..\logs\abc.log 2>&1
,并以相同的方式从任务调度器调用它:C:\abc\abc.bat
-jar C:\repo\curium.jar