SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

特集記事

JRubyチュートリアル

JRubyでJavaとRubyを融合する


JRubyの使い方

 JRubyの使い方は非常に簡単です。Rubyで書いたスクリプトファイルを用意し、コマンドプロンプトを起動して、以下のように実行するだけです。

jruby [スクリプトファイルのパス]

 Rubyのスクリプトファイルは、「.rb」という拡張子のテキストファイルとして保存します。このファイルのパスを指定すればいいわけです。実際に簡単なサンプルを書いて動かしてみましょう。

puts "Hello JRuby!"

 たった1行のシンプルなスクリプトです。これをファイルに保存します。ここでは、「C:\Users\Public」ディレクトリに「test.rb」というファイル名で保存しておきます。コマンドプロンプトを起動し、以下のように実行します。

jruby C:\Users\Public\test.rb
コマンドプロンプトからtest.rbを実行する。テキストが表示されればOK
コマンドプロンプトからtest.rbを実行する。テキストが表示されればOK

 コマンドプロンプトに「Hello JRuby!」とテキストが出力されましたか? JRubyは、基本的にこのようにしてスクリプトを実行できます。ただスクリプトを動かすだけなら、案外簡単です。

EclipseでJRubyのスクリプトを実行する

 しかし、JRubyの利点は手軽にスクリプトを実行できる点ではなく、JavaとRubyをクロスオーバーした利用ができる点です。以下、この方法について説明していきます。

Rubyを扱うEclipseプラグイン

 まずは、開発の環境から整えていきましょう。Javaの開発で最も広く用いられているEclipseには、Rubyを扱うためのプラグインとして「Ruby Development Tools(RDT)」というものが公開されています。またEclipse Foundation本家からは「Dynamic Language Toolkit(DLTK)」というスクリプト言語全般の開発用ソフトウェアのプロジェクトが動いており、その中でRuby IDEもサポートされています。

 ただし! これらは基本的にオリジナルRuby向け開発のためのものと考えた方がよいでしょう。もちろん、これらを使ってもJRubyの開発は行えますし、特にRuby専用エディタを使って補完機能をサポートした快適な編集環境は、非常に快適です。これを利用するためだけに、上記のプラグインを利用するのもよいでしょう。

 ですが、これらは原則として「Ruby専用のプロジェクトを作成してRubyのスクリプトファイルを作る」といった形の開発のためのものですので、「JavaからRubyを使う」あるいは「RubyからJavaを使う」といったクロスオーバーな開発には向いていない面もあります。この点を理解しておいてください。

DLTKのインストール

 それでは、Eclipse FoundationによるDLTKのインストールについて簡単に説明します。DLTKは、Eclipse 3.3用として現在開発中のプラグインで、2007年9月現在、バージョン0.9がリリースされています。正式リリースまでもう少しかかるという状態ですが、現状の0.9でもかなり快適に使うことができます。インストールはソフトウェア更新機能を利用して行います。

 まず、[ヘルプ]-[ソフトウェア更新]-[検索およびインストール]メニューを選び、現れたウインドウで[インストールする新規フィーチャーを検索]を選んでください。次へ進むと、検索するサイトを選択する画面に進みます。

 ここで、[新規リモート・サイト]ボタンをクリックし、以下のようにサイト情報を入力してください。

設定内容
設定項目設定値
名前Dynamic Language Toolkit更新サイト
URLhttp://download.eclipse.org/technology/dltk/updates/
新規リモート・サイトとして、DLTKの更新サイトを登録する
新規リモート・サイトとして、DLTKの更新サイトを登録する

 [OK]ボタンをクリックして作成したDLTKの更新サイトをチェックし、終了します。途中、ミラーサイトの選択ダイアログが現れるので、適当に選んでおきます。これでサイトを検索し、用意されているプラグイン(フィーチャー)の一覧が表示されます。この項目を展開表示すると、各言語向けの項目が表示されます。

Ruby開発ツールのチェックをONにする
Ruby開発ツールのチェックをONにする

 ここでは、「動的言語 -Ruby開発ツール」(Dynamic Languages Toolkit Ruby SDK)という項目を選択します。そして[必須項目を選択]ボタンで必要なフィーチャーを選択させてください。以後は、一般的なプラグインのインストールと同じです。次へ進み、使用条件の状況への同意を行い、ダウンロードを開始してください。終了したらすべてインストールし、再起動すればプラグインを使えるようになります。

ライブラリと外部ツールの登録

 これでRubyの開発環境は整いましたが、これは原則として「(JRubyではない)オリジナルRuby」のためのものです。JRubyを使って、Javaプロジェクトの中からRubyスクリプトを呼び出して実行するためには、次の2つの設定が必要です。

ユーザーライブラリの登録

 1つは、JRubyのライブラリをユーザライブラリとして登録しておく作業です。[ウインドウ]-[設定]メニューを選び、設定ウインドウを呼び出しましょう。そして[Java]-[ビルドパス]-[ユーザー・ライブラリー]項目を選択してください。これで、ユーザーライブラリの登録画面が現れます。

 ここで[新規]ボタンをクリックし、ユーザー・ライブラリー名として「JRuby」と入力します。そしてOKすると、新しいライブラリ「JRuby」が作成されます。

ユーザー・ライブラリーの新規」ボタンで、ライブラリー名を入力する
ユーザー・ライブラリーの新規」ボタンで、ライブラリー名を入力する

 作成した「JRuby」を選択し、[JARの追加]ボタンをクリックします。そしてJRubyの「lib」フォルダ内にあるJarファイルすべてを選択し追加してください。これで、JRubyライブラリが用意できました。

Jarの追加ボタンでlib内のJarファイルを登録したところ
Jarの追加ボタンでlib内のJarファイルを登録したところ

スクリプトファイルの実行設定

 もう1つ、外部ツールとしてjruby.batを使ってスクリプトファイルを実行するための設定も用意しておきましょう。[実行]-[外部ツール]-[外部ツールを開く]メニューを選び、現れたダイアログで「プログラム」項目を選択して新規構成を作成します。そして、[メイン]タブで以下のように設定をしてください。

設定内容
設定項目設定値
名前JRuby
ロケーション「ファイル・システムの参照」ボタンを押し、「bin」フォルダ内の「jruby.bat]ファイルを選択します。
作業ディレクトリ(なし)
引数${resource_loc}
外部ツールの実行構成を用意する
外部ツールの実行構成を用意する

 作成したユーザー・ライブラリーは、EclipseのJavaプロジェクトでJRubyの機能を利用する場合に使うものです。また外部ツールの実行構成は、Eclipse内のRuby以外のプロジェクトでRubyのスクリプトファイルを実行するためのものです。

 Rubyプロジェクトを使う場合には、プラグインによって自動的に必要な機能が追加されるので不要です。今回は、この外部ツールによる実行は特に使いませんが、用意しておくと非常に便利ですので最初に設定だけしておきましょう。

次のページ
Rubyプロジェクトでスクリプトを動かす

この記事は参考になりましたか?

特集記事連載記事一覧

もっと読む

この記事の著者

掌田 津耶乃(ショウダ ツヤノ)

三文ライター&三流プログラマ。主にビギナーに向けたプログラミング関連の執筆を中心に活動している。※現在、入門ドキュメントサイト「libro」、カード型学習サイト「CARD.tuyano.com」を公開...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/1647 2007/12/13 16:08

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー