如果系统调用返回错误,则使rake任务失败

时间:2012-12-19 19:01:47

标签: ruby rake rake-task

我有一个Rakefile,用于自动执行项目中的某些任务。

在某些任务中,我调用system,但是,即使进程返回错误, 任务继续没有任何问题。

我该如何避免?当某个子进程返回错误时,我想让rake退出。

提前致谢

2 个答案:

答案 0 :(得分:8)

您可以评估system

的返回值
system('inexistent command') or exit!(1)
puts "This line is not reached"

答案 1 :(得分:1)

sh是调用命令的Rake方式。它将失败并带有一条简洁的信息。与system相比,sh也打印出命令。