0

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

4

1 回答 1

1

通过任务计划程序启动进程时,它的环境可能与从桌面启动进程时不同。要对此进行测试,您可以创建一个使用任务计划程序cmd中的/k参数运行的任务。运行时会打开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.

于 2016-10-21T02:22:02.737 回答