rake 中止!未定义的局部变量或方法

rake 中止!未定义的局部变量或方法

在一台全新的 Ubuntu 机器上,我已经安装了 ruby

sudo apt-get 安装 ruby​​1.8

然后使用以下命令安装 ruby​​gem1.8:

sudo apt-get 安装 ruby​​gems

然后使用以下命令安装 rails3.2.8:

宝石安装导轨

这个过程很简单。但问题来了。当我尝试使用以下命令检查 rake 的版本时,rake --trace -version出现了以下错误:

rake aborted!
undefined local variable or method `rsion' for #<Rake::Application:0xb72c731c>
/var/lib/gems/1.8/gems/rake-0.9.2.2/lib/rake/application.rb:316:in `standard_rake_options'
/usr/lib/ruby/1.8/optparse.rb:1298:in `eval'
/var/lib/gems/1.8/gems/rake-0.9.2.2/lib/rake/application.rb:316:in `standard_rake_options'
/usr/lib/ruby/1.8/optparse.rb:1298:in `call'
/usr/lib/ruby/1.8/optparse.rb:1298:in `parse_in_order'
/usr/lib/ruby/1.8/optparse.rb:1254:in `catch'
/usr/lib/ruby/1.8/optparse.rb:1254:in `parse_in_order'
/usr/lib/ruby/1.8/optparse.rb:1248:in `order!'
/usr/lib/ruby/1.8/optparse.rb:1339:in `permute!'
/usr/lib/ruby/1.8/optparse.rb:1360:in `parse!'
/var/lib/gems/1.8/gems/rake-0.9.2.2/lib/rake/application.rb:425:in `handle_options'
/var/lib/gems/1.8/gems/rake-0.9.2.2/lib/rake/application.rb:74:in `init'
/var/lib/gems/1.8/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling'
/var/lib/gems/1.8/gems/rake-0.9.2.2/lib/rake/application.rb:72:in `init'
/var/lib/gems/1.8/gems/rake-0.9.2.2/lib/rake/application.rb:64:in `run'
/var/lib/gems/1.8/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling'
/var/lib/gems/1.8/gems/rake-0.9.2.2/lib/rake/application.rb:63:in `run'
/var/lib/gems/1.8/gems/rake-0.9.2.2/bin/rake:33
/usr/local/bin/rake:19:in `load'
/usr/local/bin/rake:19

这个问题是不是因为我直接从 ubuntu apt-get 包管理器安装而产生的?

答案1

rake --version将输出您已安装的 rake 版本。或者简写为:rake -V。请参阅 rake 的文档(阅读下文了解如何操作)。

您在长样式命令前使用了一个破折号。如果使用单个破折号,则所有后续字母将被视为单独的命令行选项

例如,
rake -h将显示可能的命令行选项列表并
rake -Vvt打印出 rake 的版本,激活消息记录到标准输出并启用带有完整回溯的跟踪。这意味着,组合的短样式选项 -V、-v 和 -t 被传递给程序。在您的例子中,您尝试使用选项 -v、-e、-r、-s、-i、-o 和 -n 执行 rake。这对 -v(详细)和 -e(执行代码)有效,但找不到 rsion。
rake --Vvt将搜索名为 Vvt 的选项,并rake --version搜索名为 version 的选项。

请注意,这都是惯例,程序员可以自行决定是否遵守这些或网络。要获取程序用于
man programm手册页programm -hprogramm --help简短文档的所有已记录命令行选项的列表,请将“programm”替换为(例如)rake,以查看 rake 的选项。

相关内容