一定有一个简单的设置我错过了所以请原谅我,但我注意到有两次我的不良 ant 任务不会导致构建失败。例如:
源文件不存在时的 Ant 复制...构建成功
Ant 解压缩,当任务报告“无法写入文件”或类似消息时...构建成功
Ant exec 错误,语法无效...构建成功
如何保证所有 ant 任务错误都会导致构建失败?
一定有一个简单的设置我错过了所以请原谅我,但我注意到有两次我的不良 ant 任务不会导致构建失败。例如:
源文件不存在时的 Ant 复制...构建成功
Ant 解压缩,当任务报告“无法写入文件”或类似消息时...构建成功
Ant exec 错误,语法无效...构建成功
如何保证所有 ant 任务错误都会导致构建失败?
<EXEC>
默认情况下,任务不会失败。您需要启用此功能failonerror="true"
Ant<COPY>
任务的失败取决于所使用的资源集合类型。如果您使用fileset
or patternset
,那么所有丢失的文件都会被忽略。您只能通过使用filelist
类型或使用参数化的“文件”属性来强制失败。
因此,您要使用的是:
<copy todir="my_dir" file="foo" />
<copy todir="my_dir" flatten="true">
<filelist dir="" files="foo" />
</copy>
<copy todir="my_dir" flatten="true">
<filelist dir="">
<file name="foo" />
<file name="bar" />
<file name="zed" />
</filelist>
</copy>
您是否尝试过以下操作:
<copy todir="your/path/details" failonerror="true">
</copy>
<zip destfile="your/path/details" whenempty="fail">
</zip>
<exec executable="your/path/details" failonerror="true">
</exec>