Eclipseを使ったRuby on Railsのデバッグ環境構築 〜 Ubuntu編(その2)

Eclipseを使ったRuby on Railsのデバッグ環境構築 〜 Ubuntu編(その2)

Eclipseを使ったRuby on Railsのデバッグ環境構築 〜 Ubuntu編(その2)

Eclipseを使ったRuby on Railsのデバッグ環境構築 〜 Ubuntu編(その2) への7件のコメント

Ruby on Rails を開発する環境を Ubuntu上に構築するためのガイダンスです。

特にEclipseにおけるシングルステップ デバッギング環境の構築を目標としたガイダンスです。
今回は前回の記事の続編で、Eclipseのインストール、そして、ブレークポイントを設定してのシングルステップ可能なデバッグ環境の構築編です。

Eclipse/JDKのインストール

では、Eclipseをインストールします。EclipseにはJDKが必要なので、JDKとEclipseをダウンロード。

JDKはOracleのサイトから、適切なJDKをダウンロードしてください。

EclipseはEclipseのサイトから、適切なものをダウンロードしてください。Eclipse Standardがお勧めです。

以下はお好みの場所で構いませんが、JDKとEclipseをインストールします。
今回は /usr/java フォルダにインストールすると仮定します。

[bash]
$ sudo mkdir /usr/java
$ sudo mv ~/Downloads/eclipse-standard-kepler-SR1-linux-gtk.tar.gz /usr/java
$ sudo mv ~/Downloads/jdk-7u51-linux-i586.tar.gz /usr/java/

$ cd /usr/java
$ sudo tar xvzf jdk-7u51-linux-i586.tar.gz
$ sudo tar xvzf eclipse-standard-kepler-SR1-linux-gtk.tar.gz

[/bash]

環境変数の設定

これでインストールは完了ですが、このままでは環境変数が存在しないため、Javaが利用出来ません。
~/.bashrcを編集し、以下を追記します。

[bash]
$nano ~/.bashrc

#以下を追記
JAVA_HOME=/usr/java/jdk1.7.0_45
PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=$JAVA_HOME/jre/lib/rt.jar

export JAVA_HOME PATH CLASSPATH
[/bash]

追記が終わったら、上記の追記内容を反映します。(次回ログイン時からは自動的に読み込まれますので、この操作をする必要はありません。)
その後、環境変数 JAVA_HOMEを確認してみます。

[bash]
$ source ~/.bashrc
$ echo $JAVA_HOME
/usr/java/jdk1.7.0_45
[/bash]

Eclipse日本語化

ついでにEclipseの日本語化もしておきましょう。

[bash]
$ wget http://sourceforge.jp/projects/mergedoc/svn/view/trunk/Pleiades/build/pleiades.zip?view=co&root=mergedoc

$ sudo mkdir /usr/java/tmp
$ sudo mv pleiades.zip /usr/java/tmp
$ cd /usr/java/tmp
$ sudo unzip pleiades.zip
$ sudo cp pleiades/features/* /usr/java/eclipse/features/ -R
$ sudo cp pleiades/plugins/* /usr/java/eclipse/plugins/ -R
[/bash]

eclipse.iniの編集
[bash]
$ sudo nano /usr/java/eclipse/eclipse.ini
最後に以下を追記
-javaagent:/usr/java/eclipse/plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar
[/bash]

では、eclipseを起動してみましょう。
めでたく、日本語化されたEclipseが起動していたらOKです。

[bash]
/usr/java/eclipse/eclipse &
[/bash]

Eclipse、メニューが表示されない不具合の解消

ただし、ここで問題があり! Ubuntu13系では何故かEclipseのメニューが表示されないという不具合がある。
回避するために以下のファイル(eclipse-run)を追加。そして、起動はeclipse直接ではなく、作成したスクリプトキックすることにする。

[bash]
$ sudo nano /usr/java/eclipse/eclipse-run

内容は以下
#!/bin/bash
export UBUNTU_MENUPROXY=0
$(dirname $0)/eclipse

編集がおわったら
$ sudo chmod 755 /usr/java/eclipse/eclipse-run

[/bash]

では、Eclipseを起動してみます。

[bash]
$ /usr/java/eclipse/eclipse-run &

[/bash]

めでたく起動し、メニューも表示されるようになっていればOKです。

Aptanaプラグインのインストール

メニューより、ヘルプ>>新規ソフトウェアのインストールを選択

http://download.aptana.com/studio3/plugin/install

追加ボタンをクリックし、名前にAptana、ロケーションに上記のURLを入力します。
リストに Aptana Studio 3 が表示されますので、チェックを入れ、インストールを行います。

rails-2

Railsプロジェクトを作成

では、テスト的にRailsプロジェクトを作ってみます。
メニューより ファイル>>新規>> Railsプロジェクトを選択
プロジェクト名は「testproj」、プロジェクトのフルパスは ~/workspace/testproj と仮定します。

メニュー_001

では、Railsアプリを起動してみます。

[bash]
$ cd ~/workspace/testproj
$ rails s

エラーメッセージ
Could not find a JavaScript runtime. See https://github.com/sstephenson/execjs for a list of available runtimes. (ExecJS::RuntimeUnavailable)

[/bash]

上記でエラーが出力される場合があります。たいていは何かが足りないからインストールしてくれ的なメッセージだと思いますので、適宜、必要なものをインストールしてやってください。
JavaScript Runtimeがないとのエラーであれば、nodejsをインストールすることで解決します。

[bash]
$ sudo apt-get install nodejs
[/bash]

今後 mysqlを利用することがあるのなら

[bash]
$ sudo apt-get install libmysqlclient-dev

[/bash]

動作確認

では、いよいよRailsアプリの動作確認です。
再度、railsサーバーを起動します。

[bash]
$ rails s

=> Booting WEBrick
=> Rails 4.0.0 application starting in development on http://0.0.0.0:3000
=> Run `rails server -h` for more startup options
=> Ctrl-C to shutdown server
[2014-01-16 16:59:59] INFO WEBrick 1.3.1
[2014-01-16 16:59:59] INFO ruby 2.0.0 (2013-11-22) [i686-linux]
[2014-01-16 16:59:59] INFO WEBrick::HTTPServer#start: pid=19531 port=3000

[/bash]

ブラウザーで、 http://localhost:3000 へアクセスします。
めでたくRailsのトップページが表示されていたら、Railsの開発環境が整ったことになります。

rails-1

Ctrlキー + Cキー で、一旦Railsサーバーを停止します。

Eclipseでのデバッグ設定

さて、ここからがいよいよ本番です。
Eclipseのメニューより、ウィンドウ>>ビューの表示>>その他 をクリックします。

メニュー_005

表示されたダイアログの中から、 Studio>>サーバー を選択します。

ビューの表示 _006

Eclipseの画面の下部に以下のようなサーバービューが表示されていると思います。
鉛筆マークをクリックし、設定を編集します。
範囲を選択_007

ここがポイントです!!
デフォルトでは、Host/IPが 「0.0.0.0」となっているのですが、ここを「127.0.0.1」とします。

Edit your Rails Server settings. _008

デバッグマークをクリックし、Railsサーバーを起動します。
範囲を選択_007

エラーダイアログが表示され、以下のようなメッセージが表示されると思います。
Ruby program /home/xxx/workspace/testproj/script/rails does not exist.

詳しい原因は分かっていないのですが、Rails3とRails4でフォルダ構造が変わったために起きているエラーのような気がします。

[bash]
$ cd ~/workspace/testproj
$ cp bin/ script -R
[/bash]

ついでですので、Eclipseのデバッグ時に必要なGemをインストールしておきます。
[bash]
$ gem install ruby-debug-ide
[/bash]

サンプルアプリケーションの作成

[bash]
$ rails generate scaffold Sample name:string email:string
$ rake db:migrate
[/bash]

サンプルアプリケーションの動作確認

Eclipseのサーバービューから デバッグボタンをクリックし、Railsサーバーを起動します。
ブラウザーで localhost:3000/samples を表示
以下のように表示されればOK!

Testproj - Chromium_010

いよいよデバッグ出来るか確認

では、Eclipseに戻って、プロジェクトエクスプローラーより
app>>controllers>>samples_controller.rb を開きます。

[ruby]
def index
@samples = Sample.all
end
[/ruby]

上記の @samples = Sample.all
の行にブレークポイントを設定します。

デバッグ - testproj-app-controllers-samples_controller.rb - Eclipse プラットフォーム _009

先ほどのページをブラウザーで再度開きます。(もしくはリロードします。)
Eclipseのブレークポイントがハイライトされ、デバッグ待ち状態になれば、めでたくデバッグ環境構築成功です!

お疲れ様でした。

About the author:

Related Posts

7 Comments

  1. モンクレール メンズ通販  - 2014年2月12日 - 10:18 PM
    返信 /

    My brother suggested I would possibly like this blog. He was totally right. This put up truly made my day. You cann’t imagine simply how a lot time I had spent for this information! Thanks!
    [url=http://www.monclersalling.com/]モンクレール メンズ通販[/url]
    モンクレール メンズ通販

  2. 匿名  - 2014年2月24日 - 3:09 PM
    返信 /

    I believe that is among the such a lot vital info for me. And i am satisfied reading your article. However should remark on few common issues, The website style is ideal, the articles is in reality great : D. Good task, cheers
    Reply -->

  3. beats by dre st  - 2014年3月15日 - 5:13 AM
    返信 /

    Woah this blog is magnificent i like reading your articles. Stay up the good work! You already know, many persons are searching around for this information, you could help them greatly.

  4. barbour factory shop  - 2014年3月16日 - 10:05 AM
    返信 /

    You actually make it seem really easy along with your presentation however I to find this topic to be actually one thing which I believe I’d by no means understand. It sort of feels too complex and very broad for me. I’m taking a look ahead in your subsequent submit, I’ll attempt to get the dangle of it!

  5. beats tron  - 2014年3月16日 - 10:07 AM
    返信 /

    Amazing things here. I’m very happy to peer your article. Thank you so much and I’m looking forward to touch you. Will you kindly drop me a mail?

Leave a comment

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

Back to Top