从Ruby调用Java程序

时间:2015-08-17 13:09:40

标签: java ruby jruby

我想从我的Ruby脚本中调用Java程序。我试图使用JRuby,我安装它,我试图看看它是如何工作的。

我首先做了以下简单的Java类:

package test;

public class Test {

public static void main(String[] args) {
 say();
}

public static void say(){
  System.out.println("oh hi!");  
}
}

以下红宝石计划,

#! /usr/bin/env ruby

require 'java'
require '/Users/arwa/NetBeansProjects/test/dist/test.jar' 

class Main
 def run
  sayObj = Java::test::test.new
  sayObj.say()
 end
end

app = Main.new
app.run

在终端中,当我输入

jruby test_again.rb

我一无所获!我不知道这是什么问题。

1 个答案:

答案 0 :(得分:0)

你在java和ruby都有问题。

java code: main和' static'除去

package test;

public class Test {

  public void say() {
    System.out.println("oh hi!");
  }

}

ruby​​代码:在调用java库时你不尊重jruby大写

#! /usr/bin/env ruby

require 'java'
require '/Users/arwa/NetBeansProjects/test/dist/test.jar' 

class Main
 def run
  sayObj = Java::Test::Test.new # NOTE the uppercase
  sayObj.say()
 end
end

app = Main.new
app.run