【特集】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" |
次に、下記コマンドでRailsアプリケーションをSharedモードで実行できるようにします。実際にはテンプレートのweb.xmlをWEB-INFディレクトリの下へコピーしてくるだけです。
> cd C:\projects\RailsApplication1 |
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> |
この後、NetBeansでGlassFishを起動してから、GlassFishの管理ツールへアクセスして[アプリケーション]→[Webアプリケーション]を開いて、そこから「RailsApplication1」を配備(デプロイ)をします。
図6 「RailsApplication1」の配備(画像をクリックすると拡大します) |
その後、「http://localhost:8080/RailsApplication1/」へアクセスすると、おなじみの画面が表示されます。先ほど作成したRailsアプリケーションは「http://localhost:8080/RailsApplication1/users」で表示できます。
■ GlassFishでは8080ポート
WEBrickは3000ポートを使っていますが、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日本語サイト)」のマスコット「ねこび〜ん」(もっと「ねこび〜ん」を見たい場合は画像をクリック!) |
■ @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全記事一覧 |
- 実運用の障害対応時間比較に見る、ログ管理基盤の効果 (2017/5/9)
ログ基盤の構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。今回は、実案件を事例とし、ログ管理基盤の有用性を、障害対応時間比較も交えて紹介 - Chatwork、LINE、Netflixが進めるリアクティブシステムとは何か (2017/4/27)
「リアクティブ」に関連する幾つかの用語について解説し、リアクティブシステムを実現するためのライブラリを紹介します - Fluentd+Elasticsearch+Kibanaで作るログ基盤の概要と構築方法 (2017/4/6)
ログ基盤を実現するFluentd+Elasticsearch+Kibanaについて、構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。初回は、ログ基盤の構築、利用方法について - プログラミングとビルド、Androidアプリ開発、Javaの基礎知識 (2017/4/3)
初心者が、Java言語を使ったAndroidのスマホアプリ開発を通じてプログラミングとは何かを学ぶ連載。初回は、プログラミングとビルド、Androidアプリ開発、Javaに関する基礎知識を解説する。
|
|