2012-02-23 3 views
2

기본적으로 레이크는 발생 된 첫 번째 예외에서 중단됩니다.레이크는 make -k (--keep-going)와 같습니다.

make -k와 같은 명령 줄이없는 것 같습니다. 프로그래밍 방식으로 수행하는 방법이 있습니까?

+0

@jmonteiro가 제안한 것과 유사한 방식으로 내 문제가 해결되었습니다. 규칙 '.o'=> [ '.c'] do | t | begin sh "cC# {t.source} -c -o # {t.name}"구출 RuntimeError => e keep_going이라면? 다음 0 else raise e end end end – hausen

답변

1

rake에 불행히도 --keep-going이 없습니다. (괜찮습니다). 내가 생각할 수있는 유일한 방법은 begin; rescue; end으로 Rakefile을 래핑하는 것이지만 "계속 진행"하지는 않을 것입니다 - 이는 단지 rake의 실행 결과가 0임을 보장합니다. 즉 예외를 무시함으로써 문제를 해결하려고하지 않는다 - 당신이 raise 뭔가 이미 알고리즘의 흐름을 변경할 때 이후로 나는 "계속"믿고

begin 
    # Former Rakefile code goes here 
rescue 
    puts $!.inspect 
end 

수 없습니다.