#ruby-on-rails #debugging #aptana #remote-debugging #mod-rails
#ruby-on-rails #отладка #aptana #удаленная отладка #мод-rails
Вопрос:
Моя среда разработки Rails — Aptana Studio 3.0.5, работающая в Windows. Приложения выполняются на Apache ModRails (Phusion Passenger) на отдельном компьютере CentOS Linux. У меня есть оба приложения Rails 2.x и 3.x.
Я хотел бы иметь возможность использовать отладчик в Aptana Studio (удаленно подключаться к запущенному приложению). По-видимому, для этого есть некоторые положения, но я не смог выяснить, что мне нужно на стороне сервера (в моей конфигурации приложения Rails)
Я пробовал это:
-
Использование Rack :: Debug: создает только сокет unix, не может быть подключен удаленно.
-
Использование ruby-debug напрямую:
Я добавил это в свой
/config/environments/development.rb
:
если File.существует?(File.join(RAILS_ROOT,'tmp', 'debug.txt ')) требуется 'ruby-debug' Debugger.wait_connection = true Debugger.start_remote("real.hostname", 5000, 5001) File.delete(File.join(RAILS_ROOT,'tmp', 'debug.txt ')) завершение
Запуск моего кода с debugger
помощью операторов останавливает выполнение, но я не могу подключиться к этому экземпляру из Aptana, а не к порту 5000, а не к порту 5001 (и я не понимаю, зачем мне там два порта).
Кроме того, этот метод был бы довольно медленным и слишком запутанным, даже если бы он работал, я бы хотел иметь более «интегрированную» отладку. Возможно ли это вообще?
Ответ №1:
Старые шаги для Netbeans относительно близки, поскольку Aptana / RadRails и Netbeans используют одно и то же ядро отладчика: http://blogs.oracle.com/martink/entry/remote_debugging_debug_whatever_ruby
По сути, запустите приложение ruby, используя rdebug-ide -p 7000
(или любой другой порт, который вы хотите), затем внутри IDE перейдите в меню Run> Debug configuration. С левой стороны выберите «Сеанс удаленной отладки Ruby», а затем добавьте туда новую конфигурацию (значок плюса над списком). Введите правильный IP-адрес / имя и порт хоста, которые вы ввели в командной строке.