0

我想为在 Windows 上运行的 Java 应用程序启用垃圾收集日志记录

与标准 Windows 程序一样,该应用程序安装在 C:/Program Files/ CompanyName / SoftwareName中,我的应用程序日志存储在 C:/Users/ username /Roaming/ SoftwareName中

在我的代码中,

System.getenv("APPDATA");

现在我希望垃圾日志也进入该位置,但我看不到如何指定它。

如果我只是指定一个文件名并尝试在 C:/Program Files/ CompanyName / SoftwareName中创建而不是使用

-Xlog:gc*:file=gc.log:time:filecount=7,filesize=8M

然后 JVM 无法启动,因为在 Windows 程序安装后没有权限在此文件夹中创建文件

现在,如果我在批处理脚本中启动应用程序,我想我可以%APPDATA%在批处理中使用,但我正在使用winrun4j,所以我看不到我可以从 .ini 文件中访问这些变量。

4

1 回答 1

0

好的,我发现我也可以在 .ini 文件中使用 %APPDATA%

例如

vmarg.1=-Xlog:gc*:file=%APPDATA%\SoftwareName\Logs\gc.log:time:filecount=7,filesize=2M
于 2020-06-01T10:31:22.277 回答