【问题标题】:Why running .bat file thru Task Scheduler is not starting the .Jar file fully?为什么通过任务计划程序运行 .bat 文件没有完全启动 .Jar 文件?
【发布时间】:2016-10-19 18:19:23
【问题描述】:

这就是正在发生的事情。我创建了一个包含start javaw -jar BTG_Producer.jar 的 .Bat 文件,当我通过双击手动启动它时,它将在我的系统托盘中显示我的 java 程序,并在 Windows 任务管理器中显示进程“javaw.exe *32”。当我通过任务计划程序运行此程序时,它会启动没有 *32 的进程“javaw.exe”,并且不会在系统托盘中显示该程序。你们知道我做错了什么吗?

【问题讨论】:

  • 您能说明一下您的任务调度程序工作是什么样的吗?
  • 我不确定您想要澄清什么?这是一项基本任务,被告知在每天凌晨 12:05 执行一个批处理文件。
  • 我说的是正在运行作业的用户帐户(是否是您的)、操作详细信息,尤其是参数和“开始”文件夹(您可以在编辑操作时看到)。

标签: batch-file jar scheduled-tasks javaw


【解决方案1】:

当您通过任务计划程序启动进程时,它的环境可能与您从桌面启动进程时不同。要对此进行测试,您可以使用来自任务计划程序的/k 参数创建一个运行cmd 的任务。运行时会打开cmd,然后你可以运行set >%userprofile%\Desktop\environment1.txt。然后,像往常一样打开一个cmd,然后运行set >%userprofile%\Desktop\environment2.txt。并排打开两个文件,然后进行比较。

在这种情况下,我怀疑您的 PATH 变量不同,这就是为什么在一种情况下运行 32 位 java,而在另一种情况下运行 64 位。

要解决此问题,您可以在批处理文件中明确指定 64 位 javaw.exe。

C:\path\to\javaw.exe 而不仅仅是javaw

【讨论】:

    猜你喜欢
    • 2014-02-28
    • 1970-01-01
    • 2015-11-30
    • 2011-11-06
    • 2014-08-14
    • 1970-01-01
    • 2013-07-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多