首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > Ruby Rails >

在java语言中实施jruby

2012-11-15 
在java语言中执行jrubyruby一种动态语言,而JRuby是纯java实现的ruby语言。JRuby使用ruby语法开发。不仅可以

在java语言中执行jruby
    ruby一种动态语言,而JRuby是纯java实现的ruby语言。JRuby使用ruby语法开发。不仅可以使用ruby类库,同时也可以使用java基础类库和第三方jar包。
举一个hello world的例子:
ruby语言



swing为了监听事件通常要写很多匿名内部类,我觉得这是java语言的弱点。ruby有block和闭包,那么使用jruby开发swing就能解决这个问题。

好吧,让我们切入正题。有时候我们需要利用不同语言的特性解决不同的问题,比如用java语言做开发,但有一个生成静态页面的模块用jruby(我感觉在模板引擎这块ruby远远要比java做的好,即使java有freemarker和velocity),我需要在合适的时机通过java调用jruby写的模块来生成页面。

问题来了,怎样通过java调用jruby写的程序呢?
有三种方式可以解决这个问题(参考 RedBridge)


1  Embed Core
需要 jruby.jar
String jrubyCode="puts 'hello world'";BSFManager.registerScriptingEngine("jruby", "org.jruby.embed.bsf.JRubyEngine", new String[] {"rb"});BSFManager manager = new BSFManager();manager.exec("jruby", "<script>", 0, 0, jrubyCode);

热点排行