Не может загрузить такой файл - script/rails: получение этой ошибки при удаленной отладке через RubyMine
Я получаю следующую ошибку при удаленной отладке через RubyMine IDE.
$ bundle exec rdebug-ide --port 1234 -- script/rails server
Fast Debugger (ruby-debug-ide 0.4.9) listens on :1234
/home/amit/.rvm/gems/ruby-1.9.3-p125/gems/ruby-debug-ide19-0.4.12/lib/ruby-debug-ide.rb:123:in `debug_load'
/home/amit/.rvm/gems/ruby-1.9.3-p125/gems/ruby-debug-ide19-0.4.12/lib/ruby-debug-ide.rb:123:in `debug_program'
/home/amit/.rvm/gems/ruby-1.9.3-p125/gems/ruby-debug-ide19-0.4.12/bin/rdebug-ide:87:in `<top (required)>'
/home/amit/.rvm/gems/ruby-1.9.3-p125/bin/rdebug-ide:19:in `load'
/home/amit/.rvm/gems/ruby-1.9.3-p125/bin/rdebug-ide:19:in `<main>'
Uncaught exception: cannot load such file -- script/rails
Я пошел по этой ссылке, чтобы установить требуемые гемы для удаленной отладки.
Вот конфигурация Gemfile для удаленной отладки
#To Debug
gem 'linecache19', '0.5.13', :path => "~/.rvm/gems/ruby-1.9.3-p125/gems/linecache19-0.5.13/"
gem 'ruby-debug-base19', '0.11.26', :path => "~/.rvm/gems/ruby-1.9.3-p125/gems/ruby-debug-base19-0.11.26/"
gem 'ruby-debug19', :require => 'ruby-debug'
gem 'ruby-debug-ide19'
Приложение работает с Ruby 1.9.3 и Rails 3.0.11.
2 ответа
Вы используете некоторые странные отладочные гемы, нужно только следующее:
ruby-debug-base19x
ruby-debug-ide
Сначала удалите все ruby-debug*
драгоценные камни, затем установите необходимые драгоценные камни, используя следующие команды:
gem install ruby-debug-base19x --pre
gem install ruby-debug-ide --pre
Вы должны получить следующие (или более новые) версии:
ruby-debug-base19x (0.11.30.pre10)
ruby-debug-ide (0.4.17.beta9)
Настройте свой Gemfile
включить только эти два драгоценных камня (кроме драгоценных камней приложения).
Если вы получаете linecache19
связанные ошибки, установите его следующим образом:
curl -OL http://rubyforge.org/frs/download.php/75414/linecache19-0.5.13.gem
gem install linecache19-0.5.13.gem
@Anjan предоставил полные изменения Gemfile для отладки:
gem 'linecache19', '>= 0.5.13', :git => 'https://github.com/robmathews/linecache19-0.5.13.git'
gem 'ruby-debug-base19x', '>= 0.11.30.pre10'
gem 'ruby-debug-ide', '>= 0.4.17.beta14'
Не забудьте обновить пакет.
Я уже решил эту проблему с помощью CrazyCoder, следуя всем инструкциям, которые он упомянул в своем ответе.
Я отвечаю здесь только для того, чтобы объяснить, что сработало для меня, поэтому может быть полезным для сообщества.
Вот последняя запись моего файла Gem
gem 'linecache19', '0.5.13', :path => "~/.rvm/gems/ruby-1.9.3-p125/gems/linecache19-0.5.13"
gem 'ruby-debug-base19x', '0.11.30.pre10'
gem 'ruby-debug-ide', '0.4.17.beta9'
Без :path
за linecache19
Я получаю следующую ошибку.
You have requested:
linecache19 = 0.5.13
The bundle currently has linecache19 locked at 0.5.12.
Try running `bundle update linecache19`