Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Windows任务计划程序在';他已经跑了X天了_Java_Windows_Service_Scheduled Tasks_Apache Zookeeper - Fatal编程技术网

Java Windows任务计划程序在';他已经跑了X天了

Java Windows任务计划程序在';他已经跑了X天了,java,windows,service,scheduled-tasks,apache-zookeeper,Java,Windows,Service,Scheduled Tasks,Apache Zookeeper,我正在从命令行创建计划任务: schtasks /Create /SC ONSTART /TN "Zookeeper server" /TR D:\Zookeeper\zookeeper-3.4.6\bin\zkServer.cmd /RU System /V1 /f 问题是“如果运行X天停止任务”选项始终处于选中状态。我试图取消勾选它,但它总是立即恢复。因为它是一个服务器,我希望它能够运行3天以上 我看到了一个解决方案,您必须导出任务的xml,手动更改值(ExecutionTimeLimit

我正在从命令行创建计划任务:

schtasks /Create /SC ONSTART /TN "Zookeeper server" /TR D:\Zookeeper\zookeeper-3.4.6\bin\zkServer.cmd /RU System /V1 /f
问题是“如果运行X天停止任务”选项始终处于选中状态。我试图取消勾选它,但它总是立即恢复。因为它是一个服务器,我希望它能够运行3天以上

我看到了一个解决方案,您必须导出任务的xml,手动更改值(ExecutionTimeLimit),删除任务并从xml模板创建它,但这也不起作用

我还认为这是ONSTART触发器的一个强制选项,所以我尝试用一次性触发器替换它,同样的情况也会发生

有没有办法确保我的应用程序在启动时运行(没有用户登录)?仍然允许用户随意停止和启动它

我知道服务,但我听说用java的应用程序做服务有点难


编辑:我更愿意解决这个问题,但如果不可能,可以采用一种方法将Zookeeper服务器安装为服务。我尝试使用nssm 2.23,但无法以静默方式安装服务(必须在没有用户界面的情况下安装)。

为什么不将该命令作为服务而不是在任务计划程序中运行?任务调度器,顾名思义就是调度任务,而不是永远运行它们


当服务器启动时,您可以将该命令作为服务运行,如果用户希望停止该命令,您可以向用户提供控制权。在另一个问题中有关于如何使其成为服务的更多信息:

我发现了一个很好的Windows服务包装器,它允许我在命令行中安装和管理服务。从我今天测试的Zookeeper服务器来看,它工作得非常好


我似乎对使用这个有问题。它向我的安装程序添加了两个依赖项(计划任务在Inno Setup可执行文件中创建)。我不知道它是否能在每个工作站上工作。我甚至不能让它在我的身上工作。我无法安装RunaService,因为它需要Microsoft.Net Framework 1.1软件包,当我尝试安装该软件包时,出现了一个错误“Windows Installer初始化时出错。”。安装程序现在将关闭。'