在Windows上为jar命令设置系统属性



我们的应用程序依赖于使用jar命令来提取远程系统上的文件。我们刚刚注意到,在java 6中,Sun更改了用jar命令提取的文件的时间戳的默认行为(这是一个多么可怕的决定,但我跑题了…)。现在,用jar提取的文件使用了原始的上次修改日期,而不是提取时的时间戳。

通过搜索,我发现了这个出价位:

jar将在提取期间保留文件修改日期和时间

从jar档案中提取的文件和目录现在将其时间戳设置为与jar档案中相应文件/目录的时间戳相匹配。在JavaSE6之前,从jar归档中提取的文件和目录会给出提取的日期和时间。提供了一个系统属性sun.tools.jar.useExtractionTime=true,以便可以获得Java SE 5.0及更早版本的行为。Java SE中此属性的默认值为false。

从此页面:http://www.oracle.com/technetwork/java/javase/compatibility-137541.html

然而,我不知道如何在jar命令上设置系统属性。我试着用-D,但没有用。似乎同样的行为也反映在IBMJDK中,我需要一种方法来解决它

有人知道如何为jar命令设置系统属性吗?

我在这里找到了链接:http://download.oracle.com/javase/6/docs/technotes/tools/windows/jar.html

您实际上传递了-J-Dsun.tools.jar.useExtractionTime=true希望这能在未来帮助其他人。

最新更新