我定义了以下蚂蚁目标。这个想法是仅在文件夹的某些内容发生更改时才进行繁重的工作。
<target name="checksumAssets">
<echo message="verify checksums" />
<checksum todir="${bin.loc}/../checksums" verifyproperty="checksum.isUpToDate.test">
<fileset dir="${bin.loc}/assets/" id="filelist">
<include name="somefolder/" />
<exclude name="somefolder/result.swf"/>
</fileset>
</checksum>
<echo message="${toString:filelist}"/>
<echoproperties regex="checksum.isUpToDate.test"/>
</target>
<target name="createAsset" depends="checksumAssets" unless="${checksum.isUpToDate.test}">
<!-- do create the assets and other magic -->
<echo message="create checksum files" />
<checksum todir="${bin.loc}/../checksums" >
<fileset refid="filelist" />
</checksum>
</target>
somefolder 包含将被处理并生成包含这些资产的 swf 文件的图像。
我希望仅在资产文件夹中的某些内容发生更改时才进行这种繁重的处理。
这在两种情况下有效:
- 我将一个新文件添加到某个文件夹
- 我更改某个文件夹中的现有文件
我的问题是:
- 当我从此文件夹中删除文件时它不起作用。
ant createAsset
这意味着,如果我从相关文件夹中删除文件,则不会调用 createAsset Target 。如果校验和文件夹中不存在校验和文件,则会在上述两种情况下调用它。
有什么我想念的吗?
蚂蚁版本是 1.8.2