1

我使用 yajsw(又一个 java 服务包装器)将两个 java 程序包装为服务,以便让它们在不同的服务器上无限期地运行。我让其中一个完全按照我的预期工作(该服务安装在服务器上,其行为与从 cmd 运行时的行为完全相同,并在它或服务器出现故障时随时重新启动)。但是,当我对第二个 java 项目执行此操作时,它不起作用。它作为服务安装并将运行,但是当它尝试使用 ProcessBuilder() 从 java 中运行 powershell 脚本(第一个项目不这样做)时,它启动并且 powershell.exe 显示在任务管理器中,但是永远不会关闭或产生任何预期的副作用。当我从命令行运行 .jar 时,这两件事都可以无缝运行。

更新:在脚本中我有以下行: $outlook = new-object -com outlook.application;

问题是在此之后 $outlook 为空,然后脚本无法解析任何电子邮件,导致没有输出。将 java 程序包装为服务会打乱 Outlook 应用程序对象的创建吗?

4

0 回答 0