Merb i graficzny debugger Netbeans 6.x

Opublikowane przez Jarosław Zabiełło Thu, 20 Dec 2007 21:03:00 GMT

Jak wielu pewnie wiadomo, Netbeans 6 pozwala na debugowanie kodu Railsów w swym graficznym środowisku. Jest to dużo bardziej komfortowe niż katowanie Rubiego w tekstowej konsoli (zobacz screencast). Zdobywający coraz więcej sympatyków (konkurencyjny wobec Rails) framework Merb również pozwala na podobny komfort pracy, tylko trzeba wiedzieć jak to zrobić.

Zarówno w wypadku Rails jak i Merb trzeba mieć doinstalowane gemy ruby-debug i ruby-debug-ide. Następnie należy stworzyć plik script/server o treści skryptu merb (używany do tworzenia nowych projektów i uruchamiania wielowątkowego serwera HTTP dla Merba).

#!/usr/bin/env ruby

require 'rubygems'

version = ">= 0"

if ARGV.first =~ /^_(.*)_$/ and Gem::Version.correct? $1 then
  version = $1
  ARGV.shift
end

gem 'merb', version
load 'merb'

Plikowi nadajemy prawa do uruchomienia (chmod a+x config/server) i… to wszystko. Przełączamy się na projekt Merb (projekt Merb traktujemy w NB6 tak, jak projekt Rails), ustawiamy go głównym projektem (jeśli mamy ich więcej) i odpalamy z menu Run -> Debug Main Project). Oczywiście wcześniej ustawiamy sobie pułapki w kodzie za pomocą myszki. No i trzeba też pamiętać aby NB6 dla naszego projektu pracował z Ruby, a nie JRuby (prawy click na projekt i w Properties ustawiamy odpowiednią Ruby Platform) Uwaga: tą metodą Mongrel z Merbem jest odpalany na porcie 3000 a nie 4000.

Tagi , ,  | 2 comments

Comments

  1. Avatar dmilith powiedział 11 months later:

    Dla jrubiego to się nie sprawdzi. zacznijmy od tego że ruby-debug-ide trzeba zainstalować wg wiki netbeansa: http://wiki.netbeans.org/RubyDebugging#section-RubyDebugging-JRuby

    Druga kwestia to to że dla jrubiego plik script/server musi mieć:

    -gem ‘merb’, version +gem ‘merb-core’, version

    po zmianie netbeans potrafi debugować aplikacje merba via jruby 1.1.5

  2. Avatar Jarosław Zabiełło powiedział about 1 year later:

    Od czasu zmiany sposobu odpalania nowej wersji Merba, ten hack już nie działa.. :( Zainteresowani niech śledzą Wiki na ten temat.

(leave url/email »)

   Pomoc języka formatowania Obejrzyj komentarz