0

我有一个php.ini应该激活 PHP 压缩的文件(无法在我的服务器上设置全局设置)。不幸的是,该文件中的设置仅适用于该完全相同文件夹中的文件。为了将这些设置应用于该项目中的所有文件,我需要将该php.ini文件复制到所有子目录中。

现在,在我使用 Ant 构建项目后,我正在寻找 Ant 支持的解决方案......

有没有办法做到那种glob(IS_DIR)风格?

4

3 回答 3

1

感谢您为我指明正确的方向!

我现在使用的目标是这样的:

<target name="enable.compression">
    <apply executable="cp">
        <arg value="php.ini" />
        <dirset dir="">
            <include name="*/**" />
        </dirset>
    </apply>
</target>

它完全按照它应该做的......

由于该方法中包含的根目录,使用 just<dirset dir="">导致文件试图覆盖自身

于 2013-06-28T12:00:03.093 回答
0

纯 ANT 解决方案可以利用 ANT 中的应用任务

  <apply executable="cp">
     <arg value="/path/to/php.ini"/>
     <dirset dir="/target/dir/containing/sub/dirs"/>
  </apply>
于 2013-06-28T01:17:48.553 回答
0

最简单的解决方案是使用ant-contrib及其for任务。

这是一段构建文件,它应该执行预期的副本:

<ac:for param="dir">
  <dirset dir="destdir" />
  <sequential>
    <copy file="php.ini" todir="@{dir}" />
  </sequential>
</ac:for>
于 2013-06-27T18:29:37.633 回答