JRubyについて RubyからJavaプログラムを呼び出してみる

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

準備

さっそくJRubyをインストールしてみましょう。
基本的には下記のコマンドになります。

$ cd /usr/local/src/
$ sudo wget https://s3.amazonaws.com/jruby.org/downloads/9.0.5.0/jruby-bin-9.0.5.0.tar.gz
$ sudo tar zxvf jruby-bin-9.0.5.0.tar.gz 
$ sudo mv jruby-9.0.5.0/ /usr/local/jruby

ただ、今回は上記の方法ではなく、rbenvでインストールしてみたいと思います。
今回はjruby-9.0.0.0をインストールしてみます。

rbenv install jruby-9.0.0.0
rbenv global jruby-9.0.0.0

RubyからJavaプログラムを呼び出してみる

試しにJavaのクラスを呼び出してみます。 Rubyプログラムを作成して下記のようなコードを書いてみます。

vi test1.rb
require 'java'
include_class 'java.lang.System'
System.out.println('Hello JRuby')

Hello JRubyと出力されるはずです。
RubyからJavaのクラスが呼び出せました。

ruby test1.rb
=>
Hello JRuby

次はjarファイルからクラスを読みだしてみましょう
まずはjavaプログラムを記述します。

ファイル名は適当にtest.javaとでもしておきましょう。

package com.noname;

public class Test {
      public String getTest() {
            return "Test java";
      }
}

プログラムが作成できたら、jarファイルとして出力しましょう。
Eclipseの場合は下記のように操作します。

ファイルからエクスポートを選択

Jruby

JARファイルを選択して、「次へ」「完了」で出力されます。

Jruby

次に出力されたJARファイル(test.jar)を今から作成するRubyプログラムと同じディレクトリに移動させます。

ではRubyプログラムを作成しましょう。

require './sample.jar'
import 'com.noname.Test'
test = Test.new
puts test.getTest

実行してみましょう。
Test javaと表示されるはずです。

ruby test2.rb
=>
Test java
  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

SNSでもご購読できます。

コメントを残す

*

CAPTCHA