我有两个目录,我们姑且称之为src
和build
。 我的编译系统的工作原理,以便对所有文件的mtime在最近的src
比build
它直接复制文件src
以buid
,并做一些变换(缩小,版本等)。 因为文件被认为是最新的,否则跳过。
然而,这对当源文件被删除,因为其内置的版本中仍然存在的问题build
和进入之后生成的地图文件。
$ ls src
example1.js
example2.js
$ ant do-the-stuff
...
$ ls build
example1.js
example1-12345.min.js
example2.js
example2-23456.min.js
.map
$ cat .map
example1.js=example1-12345.min.js
example2.js=example2-23456.min.js
$ rm src/example2.js
$ ant do-the-stuff
...
$ cat .map
example1.js=example1-12345.min.js
example2.js=example2-23456.min.js
有没有一种方法来删除使用Ant另一个目录不存在的文件吗? 但从集理论的角度这是一个简单的A \ B操作。
这是我已经尝试过,但没有工作:
<delete dir="build">
<exclude name="src/*" />
</delete>
<delete dir="build">
<exclude>
<fileset name="src" />
</exclude>
</delete>
<delete dir="build">
<fileset dir="build/*">
<not>
<present targetdir="src" />
</not>
</fileset>
</delete>