Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/344.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从Ruby调用Java程序_Java_Ruby_Jruby - Fatal编程技术网

从Ruby调用Java程序

从Ruby调用Java程序,java,ruby,jruby,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!"); } } 下面的ruby程序 #! /usr/bin/env ruby

我想从我的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!");  
}
}
下面的ruby程序

#! /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

我什么也得不到!我不知道是什么问题。

java和ruby都有问题

java代码: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