Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/378.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 Install4j:带有时间戳的更新程序日志文件名_Java_Install4j - Fatal编程技术网

Java Install4j:带有时间戳的更新程序日志文件名

Java Install4j:带有时间戳的更新程序日志文件名,java,install4j,Java,Install4j,我有一个SilentUpdater(使用Install4j版本6.1.4构建),它将日志文件写入通过VM参数配置的特定目录:-Dinstall4j.debug=true-Dinstall4j.keepLog=true-Dinstall4j.alternativeLogfile=${installer:sys.installationDir}/log/updater.log 但是这个过程总是覆盖以前的更新程序日志。因此,我正在考虑编写带有执行时间戳的日志文件。我尝试过使用sys.date和sys.

我有一个SilentUpdater(使用Install4j版本6.1.4构建),它将日志文件写入通过VM参数配置的特定目录:
-Dinstall4j.debug=true-Dinstall4j.keepLog=true-Dinstall4j.alternativeLogfile=${installer:sys.installationDir}/log/updater.log

但是这个过程总是覆盖以前的更新程序日志。因此,我正在考虑编写带有执行时间戳的日志文件。我尝试过使用
sys.date
sys.time
变量,如下所示:
-Dinstall4j.alternativeLogfile=
${installer:sys.installationDir}/log/updater{compiler:sys.date}{compiler:sys.time}.log

但是,即使更新程序在不同的时间执行,我最终还是得到了相同的文件。在阅读了有关这两个变量的文档之后,我认为它们是在安装程序构建过程中定义的,并且始终是相同的


那么,是否有其他方法可以通过VM参数或在更新过程执行期间使用当前时间戳创建日志文件?

从install4j 6.1.4开始,没有解决此问题的方法。我已将此添加到问题跟踪程序中


更新2019-02-05

在install4j 8中,您将能够在
-Dinstall4j.alternativeLogfile
或其新别名
-Dinstall4j.log
中使用安装程序变量。不再需要传递
-Dinstall4j.keepLog=true


对于时间戳,install4j 8具有安装程序变量
${installer:sys.date}
${installer:sys.time}
${installer:sys.timestamp}
,其中包含安装程序启动的时间。

自install4j 6.1.4起,此问题没有解决方案。我已将此添加到问题跟踪程序中


更新2019-02-05

在install4j 8中,您将能够在
-Dinstall4j.alternativeLogfile
或其新别名
-Dinstall4j.log
中使用安装程序变量。不再需要传递
-Dinstall4j.keepLog=true

对于时间戳,install4j 8具有安装程序变量
${installer:sys.date}
${installer:sys.time}
${installer:sys.timestamp}
,这些变量包含安装程序启动的时间