java ruby脚本_Java 程序中直接执行 Ruby 脚本 (JRuby)
1.[代碼]MainClass.java
import java.io.BufferedReader;
import java.io.FileReader;
import javax.script.Invocable;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
public class MainClass {
public static void main(String[] args) throws Exception {
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("jruby");
engine.eval(new BufferedReader(new FileReader("r.rb")));
Invocable invocable = (Invocable) engine;
Object tempconverter = invocable.invokeFunction("getTempConverter");
double degreesCelsius = (Double) invocable.invokeMethod(tempconverter, "f2c", 98.6);
System.out.println(degreesCelsius);
double degreesFahrenheit = (Double) invocable.invokeMethod(tempconverter, "c2f",100.0);
System.out.println(degreesFahrenheit);
}
}
2.[代碼]TempConverter.rb
class TempConverter
def c2f(degrees)
degrees*9.0/5.0+32
end
def f2c(degrees)
(degrees-32)*5.0/9.0
end
end
def getTempConverter
TempConverter.new
end
總結
以上是生活随笔為你收集整理的java ruby脚本_Java 程序中直接执行 Ruby 脚本 (JRuby)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python mockito arg_t
- 下一篇: 【Mybatis-Plus】(四)分页、