отладка rails 3.1.1 приложения

#ruby-on-rails-3 #debugging #rvm #ruby-1.9 #ruby-debug

#ruby-on-rails-3 #отладка #rvm #ruby-1.9 #ruby-debug

Вопрос:

Я пытаюсь добавить отладчик в свое приложение rails 3.1.1, которое использует ruby 1.9.2. Я добавил следующее в свой gemfile:

 gem 'ruby-debug19', :require => 'ruby-debug'
  

и я получаю следующую ошибку:

 /.rvm/gems/ruby-1.9.2-p290@rails31/gems/ruby-debug19-0.11.6/cli/ruby-debug/interface.rb:55:in `block (2 levels) in initialize': uninitialized constant Debugger::LocalInterface::Readline (NameError)
  

кстати, у меня есть следующее:

 $ ruby -v
ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-linux]
$ rails -v
Rails 3.1.1
$ rvm -v
rvm 1.8.6 by Wayne E. Seguin (wayneeseguin@gmail.com) [https://rvm.beginrescueend.com/]
  

Ответ №1:

То, что сделано, это работа для меня:

 sudo gem install ruby-debug19
gem install linecache19
gem install ruby-debug-base19
bundle update
rails server -u
  

Ответ №2:

Вы установили все необходимые компоненты, перечисленные в rvm notes , перед установкой Ruby? Я не уверен, но я думаю, что readline — это зависимость MRI от Linux.

Вы также можете следовать этим инструкциям с сайта RVM:

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

ПРИМЕЧАНИЕ: Прежде чем следовать приведенной ниже процедуре, пожалуйста, убедитесь, что вы установили все зависимости для устанавливаемого вами Ruby, перечисленные командой ‘rvm notes’. Если вы еще не сделали этого, выполните команду ‘rvm remove X; rvm install X’, где X — это интересующий вас Ruby.

 $ rvm pkg install readline
$ rvm remove 1.9.2
$ rvm install 1.9.2 --with-readline-dir=$rvm_path/usr
  

Комментарии:

1.Спасибо за быстрый ответ, ошибка изменилась на: You need to install ruby-debug to run the server in debugging mode. With gems, use 'gem install ruby-debug' Exiting

2. Просто чтобы перепроверить, теперь, когда вы можете установить драгоценный камень, вы запустили a bundle install в своем проекте?

3. да, похоже, это ничего не изменило