【特集】Eclipse対抗馬の本命!? NetBeansとは?
連載一覧へ

【特集】Eclipse対抗馬の本命!? NetBeansとは?(後編)
JRuby on RailsやJava EE開発に便利なNetBeans


株式会社ガリレオ
小山博史
2008/3/17

 

GlassFishでJRuby on Railsアプリケーションを実行

 GlassFishでは、Railsアプリケーションを配備するためのコマンドがいくつか用意されているので、それを使います。GlassFishでRailsアプリケーションを実行するには、SharedモードStandaloneモードがあるのですが、今回はSharedモードを試してみました。

Sharedモードで実行

 NetBeansでGlassFishを起動している場合は停止します。次に、下記のコマンドを実行して、GlassFishでRailsアプリケーションをSharedモードで実行できる環境にします。実際には、C:\application\glassfish\libへ、jruby-complete.jar、goldspike-1.4-SNAPSHOT.jar、commons-pool-1.3.jarのファイルがコピーされます。

> set GH="c:\application\glassfish"
> set JAVA_HOME="C:\Progra~1\Java\jdk1.6.0_04"
> %GH%\lib\ant\bin\ant -f %GH%\jruby\install.xml setup-shared-env

 次に、下記コマンドでRailsアプリケーションをSharedモードで実行できるようにします。実際にはテンプレートのweb.xmlをWEB-INFディレクトリの下へコピーしてくるだけです。

> cd C:\projects\RailsApplication1
> %GH%\lib\ant\bin\ant -f %GH%\jruby\install.xml create-shared

 Windows環境では、生成されるweb.xmlのjruby.homeの値が「C:\application\glassfish/jruby/jruby-1_0_3/jruby-1.0.3」となっているので、念のため「C:/application/glassfish/jruby/jruby-1_0_3/jruby-1.0.3」と訂正します。

<context-param>
    <param-name>jruby.home</param-name>
    <param-value>C:/application/glassfish/jruby/jruby-1_0_3/jruby-1.0.3
    </param-value>
</context-param>

 この後、NetBeansでGlassFishを起動してから、GlassFishの管理ツールへアクセスして[アプリケーション]→[Webアプリケーション]を開いて、そこから「RailsApplication1」を配備(デプロイ)をします。

図6 「RailsApplication1」の配備
図6 「RailsApplication1」の配備(画像をクリックすると拡大します)

 その後、「http://localhost:8080/RailsApplication1/」へアクセスすると、おなじみの画面が表示されます。先ほど作成したRailsアプリケーションは「http://localhost:8080/RailsApplication1/users」で表示できます。

GlassFishでは8080ポート

 WEBrickは3000ポートを使っていますが、GlassFishでは8080ポートを使っている点に注意してください。こちらもきちんと動作します。

図7 GlassFishでは8080ポート
図7 GlassFishでは8080ポート

IDEに見る技術者の“格差”

 このように、NetBeansを使うと、EoD(Ease of Development)が実現できそうです。ただし、技術の基本を理解していれば、GUIの統合開発環境が提供する機能は使いこなすことができるが、技術の基本を理解していないと、IDEを有効には使えない点には注意が必要です。

 当たり前の話ですが、ツールがいかにEoDを実現していても、基本にある技術が難易度の高いものであると、やはり簡単に開発をするというわけにはいかないのです。

基本に忠実に確認を

 今回、GlassFish(Derby、JRubyも含む)についてはNetBeansに付属しているものを使っていませんから、作業をしている間に、いくつかエラーが発生しました。それぞれについて、何が問題なのかをログを見たり、コンソールに表示されるメッセージを見たり、Webを使って調べたりして、解決をしています。

 こういった作業については、簡単な方法があるわけではなく、基本に忠実に確認して解決していくしかありません。

オールインパッケージは現場で本当に役立つのか?

 現場に合わせた開発環境のカスタマイズというのはよくありますが、ちょっとしたカスタマイズをしたら、開発環境を用意するための工数が思ったよりも掛かってしまう場合も出てくるかもしれません。

 そういったことを考えると、オールインパッケージを使うことによるEoDの実現というのは表面的な話であって、初心者にとっては役に立ちますが、実際の現場ではどれだけ役に立つのかは疑問に思うかもしれません。

 しかし、基本を理解している優秀な開発者であれば、NetBeansのようなIDEを有効に利用し、しかも自分が使いやすいようにチューニングをして、開発効率を上げることができそうです。

開発環境の準備はほどほどに

 一方、表面的な部分しか理解していない開発者はちょっとした環境の変更に対応するにも時間をかけてしまって、実際のプログラムを作成しているよりも、開発環境を準備するのに時間を費やしてしまうという本末転倒なことになりそうです。

 そう考えると、NetBeansのようなIDEによって、開発効率はますます良くなってはいるのですが、腕の立つ技術者と、そうでない技術者の“格差”も広がっていくのかもしれないと、いろいろな機能を使ってみて思いました。

先日発表された「ja.netbeans(NetBeans日本語サイト)」のマスコット「ねこび〜ん」
先日発表された「ja.netbeans(NetBeans日本語サイト)」のマスコット「ねこび〜ん」(もっと「ねこび〜ん」を見たい場合は画像をクリック!)

@IT関連記事


プロファイラでメモリリークとパフォーマンス問題を解決
Java開発の問題解決を助ける(2) フリーで利用できるプロファイラ「NetBeans Profile」を使ってメモリリークとパフォーマンスの問題を解決する方法を紹介する
Java Solution」フォーラム 2005/8/10
JavaScriptを書かずにAjaxを実現するjMaki
CoolなEclipseプラグイン(22) 
jMakiを知ってますか? タグを書くだけでAjaxが実現できる便利なライブラリです。今回はそのjMakiをさらに便利に使うプラグインを紹介します
Java Solution」フォーラム 2007/11/7
Javaから見たRuby on Rails
Java+Sturtsの視点からRailsを捉える
PHPやPythonは気にならなかったJavaプログラマの皆さん、さすがにRailsだけは気になるのでは? 凄腕プログラマがその評価にチャレンジした
Java Solution」フォーラム 2006/4/1
Ruby On Railsのチームに学ぶ仕事術
安藤幸央のランダウン(30) 
素早い開発を提供するRuby On Rails。その開発チームも、優れたツールの活用でRuby On Railsのスピーディーな開発を実現している

Java Solution」フォーラム 2006/3/25
WebプログラマはRailsに乗るべきか?
安藤幸央のランダウン(29) 
日本で産まれたスクリプト言語Ruby。そのWebフレームワークとして海外から登場したRuby on Railsは驚異的なRADを提供するという

Java Solution」フォーラム 2006/2/11

筆者プロフィール
小山博史(こやま ひろし)
Webシステムの運用と開発、コンピュータと教育の研究に従事する傍ら、オープンソースソフトウェア、Java技術の普及のための活動を行っている。Ja-Jakartaプロジェクトへ参加し、コミッタの一員として活動を支えている。また、長野県の地域コミュニティである、SSS(G)bugs(J)の活動へも参加している。

1-2-3

 INDEX 【特集】Eclipse対抗馬の本命!? NetBeansとは?(後編)
      「JRuby on RailsやJava EE開発に便利なNetBeans」
  Page1
  画面やコードを自動生成してくれるのでDB連携も簡単!
Java DBを操作するツールも便利!
  Page2
  NWebアプリケーション作成も容易
NetBeansでJRuby on Railsアプリケーションを作成
Page3
  GlassFishでJRuby on Railsアプリケーションを実行
便利なIDEに見る技術者の“格差”

ご意見、ご感想はJava Solution 会議室へどうぞ




Java Solution全記事一覧



Java Agile フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Java Agile 記事ランキング

本日 月間