命令行上的ruby rake实用程序

时间:2012-01-26 04:07:39

标签: ruby rake rakefile

所以我对Ruby很新,但是我已经编写了一些rake文件来解决问题,并且它们运行得很好。快进度假,现在我根本无法让它们运行,即使是最基本的rake文件只包含一个'put'

我只在命令行上运行rake实用程序,与我的rake文件位于同一目录中,但是我遇到了'No Rakefile found'错误。

我的互联网研究反复说要确保你在你的应用程序目录中,但据我所知,我还没有制作应用程序。

C:\Users\me\.rake>rake mytask --trace
No Rakefile found (looking for: rakefile, Rakefile, rakefile.rb, Rakefile.rb)
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rake-0.9.2.2/lib/rake/application.rb:495:in `raw_
load_rakefile'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rake-0.9.2.2/lib/rake/application.rb:82:in `block
 in load_rakefile'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `stan
dard_exception_handling'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rake-0.9.2.2/lib/rake/application.rb:81:in `load_
rakefile'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rake-0.9.2.2/lib/rake/application.rb:65:in `block
 in run'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `stan
dard_exception_handling'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rake-0.9.2.2/lib/rake/application.rb:63:in `run'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rake-0.9.2.2/bin/rake:33:in `<top (required)>'
C:/Ruby192/bin/rake:19:in `load'
C:/Ruby192/bin/rake:19:in `<main>'

感谢。

1 个答案:

答案 0 :(得分:2)

你的rakefile需要命名为以下其中一个:rakefile,Rakefile,rakefile.rb,Rakefile.rb 或者你需要传递ra -f标志并指定一个这样的文件:

rake -f my_awesome_rakefile.rb

所以继续教程:

创建一个名为 my_awesome_rakefile.rb 的文件并填写:

task :check_awesomeness do
  puts "still awesome!"
end

现在从my_awesome_rakefile.rb所在的目录运行rake -f my_awesome_rakefile.rb check_awesomeness并检查它是否仍然很棒。

或者您可以将文件重命名为rakefile,并将任务重命名为default,然后自行运行rake


P.S。 man rake是你的朋友。这也是:http://rake.rubyforge.org/files/doc/rakefile_rdoc.html