正如@Raghuram所写,现代版本的Ant不使用外部
在我的Mac上,tar
默认为BSD tar。
$ tar --version
bsdtar 2.8.3 - libarchive 2.8.3
有一个GNU tar,我可以用gnutar
调用它。
$ gnutar --version
tar (GNU tar) 1.17
Copyright (C) 2007 Free Software Foundation, Inc.
...
对于Ant Tar任务,我如何将其配置为使用GNU Tar?
tar
程序;相反,它们有自己的纯Java实现。但是,您可以使用longfile="gnu"
属性生成类似于GNU tar的行为。来自手册:
如果路径或文件信息的丢失是不可接受的,而且这种情况很少发生,那么可以将longfile设置为值gnu。然后,tar任务将生成一个GNU tar文件,该文件可以具有任意长度的路径。但是,请注意,生成的归档文件只能使用GNU tar进行标记。
ant tar任务不使用系统tar
命令。因此,配置备用tar实现的问题就不会出现。