当然它可以通过使用 exec task, 但是我的问题是:

它是可能做到这一使用中的焦油的任务?

有帮助吗?

解决方案

我不认为有一种方法可以保留现有的权限,每该注意从 复制任务:

Unix注意: 权限文件是不保留当复制文件;他们最终与默认UMASK的权限,而不是。这是由于缺乏任何手段查询或设置文件的权限在目前的Java运行时。如果你需要一个准许保留副本功能,使用 <exec executable="cp" ... > 代替。

但是的 焦油任务 可以采取的一个或更多 tarfileset 元素。的 tarfileset 可以被定义 filemode 和/或 dirmode 属于指定的unix权限。如果你指定的包括多个匹配的只有这些文件获得每组所需的权限,本文件在设置将包括与这些权限。

其他提示

这缺少权限使蚂蚁焦油任务几乎无用我。有没有办法做到这一点,而不与 EXEC任务执行操作系统焦油

    <exec executable="tar" output="/dev/null" os="Linux">
        <arg value="--exclude-from=files_to_exclude.txt"/>
        <arg value="-cvz"/>
        <arg value="--file=${file.tar}"/>
        <arg value="."/>
    </exec>

有几乎人类已知的所有操作系统GNU焦油二进制文件。把他们中的一个在你的版本控制系统,并使用它取决于你的操作系统。是的,蚂蚁将需要每次运行时到餐桌的过程。

使用tarfileset工作为我们的项目。下面是万一有人需要它工作的例子:

    <tar destfile="${dist}/${module.name}-${version}.tar">
        <tarfileset dir="${package.dir}" filemode="550" includesfile="${home.dir}/includelist.txt">
            <include name="*.sh"/>
        </tarfileset>
    </tar>

在这个例子中,includelist.txt用来告诉哪些文件中的焦油文件以包括。所有带* .SH扩展名的文件将具有读取和对用户和组执行权限(550)。

希望这可以帮助别人。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top