Java 如何查找install4j windows服务的日志

Java 如何查找install4j windows服务的日志,java,windows-services,install4j,Java,Windows Services,Install4j,当我尝试启动通过install4j创建的Windows服务时,如何生成并查找日志文件?我特别想找到Java异常堆栈跟踪(如果有) 背景: 我正在尝试将启动器添加到install4j项目中。启动器设置为从jar创建Windows服务 详细信息:当它安装时,它确实安装了所有必要的文件(jar包含在安装中,可以从命令行完美地运行),但是生成的Windows服务和.exe失败。exe立即关闭,如果我将“如果main中出现异常,则失败…”标志设置为true,则服务将抛出1067错误。如果我将该标志设置为f

当我尝试启动通过install4j创建的Windows服务时,如何生成并查找日志文件?我特别想找到Java异常堆栈跟踪(如果有)

背景: 我正在尝试将启动器添加到install4j项目中。启动器设置为从jar创建Windows服务

详细信息:当它安装时,它确实安装了所有必要的文件(jar包含在安装中,可以从命令行完美地运行),但是生成的Windows服务和.exe失败。exe立即关闭,如果我将“如果main中出现异常,则失败…”标志设置为true,则服务将抛出1067错误。如果我将该标志设置为false,则当我尝试启动服务时,会收到一条消息,提示“服务已启动,然后停止…”

最有可能的错误源(我能想到的唯一可能导致终止的错误源)是我尝试读取配置文件时出现的FileNotFoundException。如果我能看到相对路径的结果,我相信我可以更正对该配置文件的引用,但我无法找到windows服务运行时的日志。我已经找到了大量的资源,这些资源似乎显示了如何获取安装程序日志文件,甚至是从exe获取日志文件,但没有一个用于从生成的服务获取日志

注: 问题类似,但那个问题是关于exe的,而不是关于Windows服务的。(并不是说我没有尝试过,但使用该参数运行.exe不会创建日志文件,甚至不会创建空的日志文件。)

关于配置文件的注意事项:
它与jar和exe位于同一目录中的“config”目录中。因此,jar使用的相对路径是“config/config.txt”

如果代码中存在异常,您可以在启动程序向导的“可执行信息->重定向”步骤中设置stderr的重定向

要获取服务的本机日志文件,请定义环境变量

INSTALL4J_LOG=yes
并重新启动服务。日志文件名为
i4jlog…
,并保存到%TEMP%目录。对于目录所在的
NT AUTHORITY\\LOCAL SERVICE
用户帐户

C:\Windows\ServiceProfiles\LocalService\AppData\Local\Temp
在Install4j中: 转到“启动器” 单击“重定向” 检查重定向stderr和stdout

在“调用”下:确保您的主类是正确的

这适用于所有install4j安装程序。检查程序文件/YourApp/中的日志文件

常见服务安装错误:

忘记安装服务。转到安装程序:屏幕和操作: 在Installer下,我使用: 停止服务(用于升级) 创建程序组 注册添加项 安装服务

在卸载程序下:
卸载:停止服务

我不需要使用您答案的第二部分,但重定向效果很好。认可的。