5

我查看了大量不同的 StackOverflow 问题以及其他网站上的文章,但没有一个完全符合我的要求。

我正在尝试做的事情:

我有一个程序需要休​​眠一段时间,然后检查以确保程序仍在运行,然后再次休眠。我已经把那部分做得很好而且花花公子,但我遇到了一个问题,让它在后台运行。我试图让它在没有系统托盘、没有命令提示符窗口、只有一个进程的情况下运行。有什么办法可以做到这一点吗?对于像这个一样简单的程序,必须有一个 24/7 全天候打开的命令提示符窗口真的让我很恼火,如果有人能提供帮助,那就太好了!

(另外,请注意,我不是在谈论从命令行编译,我是说在你打开 java 程序的 .exe 版本之后,如何让它在没有命令提示符窗口或 GUI 的情况下打开 exe)

谢谢!

编辑:是的,我正在运行 Windows,并且该程序将仅在 Windows 操作系统上运行。

4

3 回答 3

4

你想要的是一个守护程序。守护程序的 Windows 等效项是 Windows 服务。

因此,一种解决方案是将您的程序作为 Windows 服务运行。使用ProcRun将命令行 java 程序转换为服务非常简单。我上周刚刚用我的一个特定程序做了这个——大约花了半天时间,主要是因为这是我第一次这样做。

将其设为 Windows 服务的优点是您可以将其设置为在机器启动时自动启动。

于 2013-05-09T02:37:15.333 回答
1

从任务计划程序运行此 VBS 脚本:

Set Shell = CreateObject("WScript.Shell")
Shell.CurrentDirectory = "C:\Users\myuser\mylib" 
Shell.Run "java.exe MyClass", 0, False
于 2013-05-09T02:23:23.120 回答
0

查看 javaw,它是 JRE 的标准配置

于 2013-05-09T01:53:00.503 回答