ランプの中身(Ruby on Railsのシステム開発)
ランプの中身(Ruby on Railsのシステム開発)では、株式会社ケイビーエムジェイのRuby on Railsエンジニアが蓄積したノウハウを公開しています。Ruby on Railに関する技術解説や実践的なノウハウなど、開発現場の技術に則したコンテンツを随時追加していきます。 初心者の方でもわかりやすい技術解説を心がけています。リクエスト、ご質問も受け付けいますので、ご気軽にコメントを記述して下さい。

< RailsのActionMailer(T... | メイン  |  Rails 2.0の... >

nakahira@rails
2008.03.13

aptanaでrailsをデバッグ実行する


こんにちは、KBMJの中平@railsエンジニアです。

今回はruby on railsのデバッグ方法について説明したいと思います。

通常、rails開発のデバッグは「ruby script\brekpointer」を使ったり、ruby-debugで「debugger」を利用していると思います。


しかし!私はaptanaというIDEで開発をしておりますので、今回は
aptana使っている人のみが出来るrailsのデバッグ方法を説明します!

まあ、何かといいますと、[eclipse]や[visual studio]にもある、デバッグ実行モードがaptanaにもありますので、それを使ったrailsのデバッグ方法を説明します。

知ってる人にはたいした技術情報ではないのですが、IDEに慣れていない人はデバッグ実行の存在を知らないことも多いので、これを機にaptana使いをひそかに増やしたい・・・

■デバッグ準備
aptanaのインストール方法はaptanaのインストールと使い方についてを見てください。

 

デバッグに必要なものをインストール

・ruby-debug-base
・ruby-debug-ide

これがないと、aptanaでrailsをデバッグ実行できず、エラーが出ていたので調べたところ、こちらのサイトを参考にさせていただきました。

 http://programmer-toy-box.sblo.jp/article/7977379.html

以下のようにインストールします。

gem install ruby-debug-base --include-dependencies
gem install ruby-debug-ide --include-dependencies

 

■rubyのデバッグの設定
aptanaのウィンドウ→設定→Ruby→デバッガーのUse ruby-debug libraryをチェック。

■railsをデバッグモードで起動してみる
1.aptanaのサーバービューを開く(aptanaのウィンドウ→ビューの表示→サーバー を選択)

2.サーバービュー上で右クリック→追加 で起動したいprojectのサーバー設定をします。
  (すでにある人は作らなくてもいいです。)

3.通常railsは右矢印アイコンで起動ですが、ここで虫アイコンをクリックすることでrailsをデバッグモードで起動します。


■ブレイクポイントを設定して、指定した箇所でrailsを止めてみる。

エディターで止めたい行の左端のグレーの部分をダブルクリックすると、青く丸いアイコンが付きます。
これがブレイクポイントとなり、デバッグ起動時にこの場所でrailsが一時停止してくれます。
これは、デバッグ起動中に追加しても問題ありません。

画像の左端の青い丸印がそれです。 

 aptanaでrailsのデバッグ方法

 

■ブレイクポイントで停止したらなにがうれしいの?

デバッグ実行時にブレイクポイントでrailsが一時停止するとaptanaのデバッグウィンドウが表示されます。
デバッグウィンドウで出来ることは

1.railsで使っている変数の中身がすべて見ることが出来ます。
 インスタンス変数は、selfという変数の中に色々入っていまして、sessionの値やuriなど、rails自体のインスタンス変数も取得できます。
 またローカル変数も問題なく見ることが出来ます。


2.ステップ実行できる
 バグが発生したときなど、怪しい部分を1行ずつ実行して動作確認することが出来ます。
 
 ステップ実行方法

 デバッグウィンドウのメニューに実行という項目がありその中にステップ実行するボタンがあります。

 ・ステップインは外部メソッドなどがあればその中に入ってさらに1行ずつ実行
  (ライブラリを使っていればその中も1行ずつ実行できます)
 ・ステップオーバーは外部メソッドの中には入らずそのメソッドのみを実行
 ・ステップリターンは外部メソッドに入ってもとの呼び出し元に戻りたいときに使います。

 ステップ実行をやめて処理を再開する際は、同じくメニューの実行から再開というボタンをクリックすることで通常にrailsが動作します。

 

3.メソッドの呼び出し順番がわかる。
 今いるメソッドがどこから呼び出されているのか、また何を呼び出しているのかが一目でわかります。

 

まとめますと、 

変数の中身を見ながらプログラムの処理を1行ずつ追いかけることが出来ますので、大変便利なrailsのデバッグ方法だと思います。

 

このように、変数の中身が見ることが出来ます。
aptanaでrailsのデバッグ方法

■aptanaのデバッグモードにおけるデメリット
 デバッグモードは通常モードよりメモリやCPUを消費します。
 私のマシンもメモリ1Gの時には重くて使えなかったのですが、2Gにしてみたら問題なく使えました。(PCの性能によりますので、各自試してみてください)

aptanaでrailsの開発している方はこのデバッグ方法も使ってみてはいかがでしょうか?

コメント (0)  |トラックバック (0)

ブックマークに追加する Subscribe with livedoor Reader あとで読む

トラックバック URL

この記事にコメントする

ニックネーム:
メールアドレス:
URL:


KBMJのWebソリューション
Ruby on Rails Summer Festival 2008開催決定!!

TOPICS

2008/06/25
ZD Net Builder」の連載記事です。第四回は「Rubyでどう書く?:重複したRSSをまとめる」が掲載されました。

2008/05/30
ZD Net Builder」の連載記事です。第三回は「Rubyでどう書く?:Rubyで特定URLの画像パス一覧を表示する」が掲載されました。

2008/05/07
ZD Net Builder」に連載を始めました。第二回は「Rubyでどう書く?:RubyでPDF履歴書を作成する」が掲載されました。

2008/04/24
アットマーク・アイティ」に『 Rubyを使ってPaSoRi経由でSuicaの乗車履歴を取得し、GoogleMapsやGoogleEarthで表示する』が掲載されました。

全体のRoR最新ブログ一覧

プロフィール

  • nakahira
  • kbmjでrailsエンジニアをしている。中平です。

    ruby on railsのこと:
    ruby on rails でのシステム開発は2006年12月ぐらいからおこなっております。
    ruby on rails を知ってからは他の言語をやりたくないぐらい、ハマってます。
    まだまだ経験は浅いのですが、日々精進しておりますので、よろしくお願いします。

    開発環境:
    Windows vistaで開発をしています。
    aptanaというIDEを使っています。自分の周りではvimを使う人が多いですが・・・・
    vimが軽くて使いやすいのは知ってますけど、自分が好きな物を使えばいいんですよ。

    私のこと:
    攻殻機動隊が大好きです。タチコマ大好き!!
    人工無能に興味あり、社内ircやsnsに人工無能ロボを仕込んで遊んでいます。
    無能のコアは、rubyで作られたシシャモを利用しているので、いつかは自分の無能エンジンを創ってみたいですね。

ブログの購読

RSS

timelog
株式会社ケイビーエムジェイロゴ