грабли прерваны! неопределенная локальная переменная или метод

В новой новой машине с Ubuntu я установил ruby ​​с

sudo apt-get install ruby1.8

, а затем установил rubygem1.8 с помощью:

sudo apt-get install rubygems

и после этого установили rails3.2.8 с:

gem install rails

< / blockquote>

Процедура была очень простой. Но тут возникает проблема. Когда я попытался проверить версию 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?

0
задан 8 November 2012 в 14:31

1 ответ

rake --version выведет версию рейка, которую вы установили. Или в коротком стиле: rake -V. Смотрите документацию по рейку (читайте ниже, как это сделать).

Вы использовали одну черту перед длинной командой стиля. Если вы используете одну черту, все последующие буквы будут рассматриваться как отдельные параметры командной строки .

Например,
rake -h покажет вам список возможных параметров командной строки, а
rake -Vvt распечатает версию рейка, активирует запись сообщений на стандартный вывод и позволяет отслеживать с полной обратной трассировкой. Это означает, что комбинированные параметры короткого стиля -V, -v и -t передаются в программу. В вашем случае вы пытались выполнить rake с опциями -v, -e, -r, -s, -i, -o и -n. Это сработало для -v (подробный) и -e (выполнить код), но rsion не удалось найти.
rake --Vvt будет искать опцию с именем Vvt, а rake --version ищет опцию с именем версии.

Имейте в виду, что это все соглашение, программист должен подчиниться им или нет. Чтобы получить список всех документированных параметров командной строки вашей программы, используйте
man programm для man-страницы и programm -h или programm --help для краткой документации, замените «programm», например, rake, чтобы увидеть варианты рейка.

0
ответ дан 8 November 2012 в 14:31

Другие вопросы по тегам:

Похожие вопросы: