検索
連載

便利なPlayコンソールとEclipseでのデバッグ方法Scala+Play 2.0でWebアプリ開発入門(3)(3/3 ページ)

2.0からScalaに対応したWebアプリ開発の人気軽量フレームワーク「Play」について解説し、Webアプリの作り方を紹介する入門連載。今回は、さまざまなコマンドが使えるPlayコンソールの使い方と、Eclipse上でのPlayアプリのデバッグ方法を一から順に解説します

PC用表示 関連情報
Share
Tweet
LINE
Hatena
前のページへ |       

EclipseでPlayアプリのデバッグをする

 アプリケーションの開発をしていく上でデバッグ処理は必須です。Eclipseでは任意のソース上でbreak pointを設定して、さまざまな値や動作を確認します。

 ここではEclipseを用いてPlayアプリのデバッグを行ってみましょう。まず、Playコンソールをデバッグモードで起動します。デバッグモードで起動するには、「play」コマンドの後に「debug」を指定します。

$play debug 
Listening for transport dt_socket at address: 9999 //デバッグ用ポートは9999番で起動する
:
:
[gyro] $ 

 こうすることでデバッグ用の接続ポートが9999番で待ち受けられます。ついでに「run」コマンドを実行してPlayアプリを起動しておいてください。

[gyro] $ run
--- (Running the application from SBT, auto-reloading is enabled) ---
[info] play - Listening for HTTP on port 9000...
 
(Server started, use Ctrl+D to stop and go back to the console...)

 次にEclipseでデバッグ処理用にbreak pointを設定しましょう。ほとんど止める個所もないのですが、「app/controllers/Application.scala」の「index」関数で実行を止めるようにします。


break point設定

 break pointを設定したらプロジェクトディレクトリで右クリックし、[Debug As]→[Debug Configurations...]を選択します。


[Debug Configurations...]を選択

 configurations作成用のダイアログボックスが開くので、デバッグ用設定を作成しましょう。ダイアログボックス左上の新規作成ボタンを押して、下記画像のようにHostとPortを指定してDebugボタンを押します。


configurationsの設定

 これでデバッグ用設定は完了です。

 configurationsの設定が終わったらWebブラウザでPlayアプリにアクセスしてみます。

 「http://localhost:9000/」をWebブラウザで開きましょう。先ほど設定したbreak pointで処理が中断されます。


break pointで止める

 ステップ操作や変数の内容確認、任意の場所で例外を発生させたりなど、通常のEclipseデバッグ時と操作方法は同じです。

 Cotrollerのbreak pointでステップインをしてみました。Play内部のソースも確認しながら、ステップごとに処理を進めていけます。


playのソース内

 これならplay内部の処理も確認しながらデバッグできますね。

ドキュメントや参考サイトも見てみよう

 今回はPlayコンソールの基本的な使い方とEclipseでのデバッグ方法を紹介しました。

 Playコンソールはsbtをベースにしています。sbtはとても高機能なビルドツールで、今回紹介した以外にもさまざまな機能を持っています。ドキュメントや参考サイトを見れば、さらに便利な使い方ができると思います。

 詳細な解説については、「PlayドキュメントのPlayコンソール」を御覧ください。

 なお、SBTについては「はじめるSBT」が基本から非常に詳しく解説しています。併せてご確認ください。

 次回は、Play frameworkのコントローラを紹介する予定です。

著者プロフィール

中村修太

中村修太(なかむら しゅうた)

クラスメソッド勤務の新しもの好きプログラマです。昨年、東京から山口県に引っ越し、現在はノマドワーカーとして働いています。好きなJazzを聴きながらプログラミングするのが大好きです。


Copyright © ITmedia, Inc. All Rights Reserved.

前のページへ |       
ページトップに戻る