2017-05-05 22 views
0

내가이 일을 포함하여, 레이크 목표의 수를 정의하는 빌드 시스템을 사용하고레이크 작업과 레이크 작업 종속성 무시? 과 같이 내 자신의 레이크 작업을</p> <pre><code>task :test => [:all] </code></pre> <p>이 나에게 잘못된 것, 그리고 그래서 나는 정의 :

task :test => [:spec] 
task :all => [:test, :build] 
task :release => [:all] 
task :default => [:release] 

그러나, 나는 내 패키지를 빌드 할 때 지금은이 오류를 받고 있어요 :

Circular dependency detected: TOP => default => all => test => all 
Tasks: TOP => default => all => test 
BUILD FAILED 

나는 레이크 t의 레이크 작업을 정의 (또는 종속 실현 왔어요 ask) 단지 작업/종속성을 작업 정의에 추가합니다! 이것은 나를 미치게하고있다! 내가보기에 레이크 작업을 재정의 할 수없는 이유는 무엇입니까?! 레이크 작업을 덮어 쓰거나 레이크 작업의 종속성을 덮어 쓸 수있는 방법이 있습니까?

+0

2008 년부터이 게시물을 찾았지만 그런 해킹처럼 보입니다! 이 작업을 수행하는 더 깨끗한 방법이 있어야합니다. http://blog.jayfields.com/2008/02/rake-task-overwriting.html – Dasmowenator

답변

0

당신이 당신의 작업을 정의하기 전에 사용이 : 이것은 레이크 보석에 구현되어

Rake::Task[:test].clear 

을, 파일 lib 디렉토리/레이크/ task.rb 당신은 또한 clear_prerequisites, clear_actions을 지원 볼 수 있습니다, clear_comments, clear_args도 있습니다 (클리어).