【问题标题】:ruby rake utility on the command line命令行上的 ruby​​ rake 实用程序
【发布时间】:2012-01-26 04:07:39
【问题描述】:

所以我对 Ruby 很陌生,但我已经编写了一些 rake 文件来掌握事情的窍门,它们运行得非常好。假期快进,现在我根本无法让它们运行,即使是最基本的仅包含“put”的 rake 文件

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

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

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>'

谢谢。

【问题讨论】:

  • 确定你的.rake目录中有一个rake文件吗?

标签: ruby rake rakefile


【解决方案1】:

您的 rakefile 需要命名为以下之一:rakefile、Rakefile、rakefile.rb、Rakefile.rb 或者你需要通过 rake -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


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

【讨论】:

  • 这对我有用!是否有任何设置或环境变量会使这变得不必要?我很乐意使用 -f [filename],但我可以发誓我最初没有使用它。
猜你喜欢
  • 1970-01-01
  • 2012-09-08
  • 1970-01-01
  • 1970-01-01
  • 2010-11-15
  • 1970-01-01
  • 2012-08-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多