我正在尝试编写一个rake任务,它将设置一个镜像我的项目的环境.
task :environment do 
  require 'rubygems'
  require 'sequel'
  # require 'my_projects_special_files'
end
task :foo => [:environment] do
  require 'irb'
  IRB.start
end
导致irb抱怨"foo"不存在(任务的名称)
10:28:01:irb_test >> rake foo --trace (in /Users/mwlang/projects/personal/rake/irb_test) ** Invoke foo (first_time) ** Invoke environment (first_time) ** Execute environment ** Execute foo rake aborted! No such file or directory - foo /opt/local/lib/ruby/1.8/irb/input-method.rb:68:in `initialize' /opt/local/lib/ruby/1.8/irb/input-method.rb:68:in `open' /opt/local/lib/ruby/1.8/irb/input-method.rb:68:in `initialize' /opt/local/lib/ruby/1.8/irb/context.rb:80:in `new' /opt/local/lib/ruby/1.8/irb/context.rb:80:in `initialize' /opt/local/lib/ruby/1.8/irb.rb:92:in `new' /opt/local/lib/ruby/1.8/irb.rb:92:in `initialize' /opt/local/lib/ruby/1.8/irb.rb:57:in `new' /opt/local/lib/ruby/1.8/irb.rb:57:in `start' /Users/mwlang/projects/personal/rake/irb_test/Rakefile:9
小智 30
IRB.start正在查看ARGV,其中包含rake命令行中的任务名称.首先尝试清除ARGV.
require 'irb'
ARGV.clear
IRB.start