java jruby相互调用小例子

本文介绍了一个使用Java调用Ruby脚本的例子。通过org.jruby.embed包中的ScriptingContainer类,实现Java环境中运行Ruby代码。同时展示了如何利用Java Swing构建简单的GUI应用程序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package com.larry.jruby;
import org.jruby.embed.PathType;
import org.jruby.embed.ScriptingContainer;
/**
 * @author 吕桂强
 * @email larry.lv.word@gmail.com
 * @version 创建时间:2012-5-22 上午11:21:45
 */
public class App {
	static String jrubyhome = App.class.getClassLoader().getResource("").getPath().concat("com/larry/");
	public static void main(String[] args) {
		String jruby = jrubyhome.concat("jruby/jruby.rb");
		ScriptingContainer container = new ScriptingContainer();
		container.runScriptlet(PathType.ABSOLUTE, jruby);
	}  
}
include Java
import java.lang.Boolean
import java.lang.System
import javax.swing.JFrame
import javax.swing.JButton
import java.awt.Dimension

frame=JFrame.new
frame.set_default_close_operation JFrame::EXIT_ON_CLOSE
button = JButton.new("button")
button.add_action_listener do |evt|
  javax.swing.JOptionPane.show_message_dialog(nil, <<EOF)
you click me #{System.identity_hash_code evt}
EOF
end
frame.get_content_pane.add button
frame.set_minimum_size Dimension.new(200, 200)
frame.set_location_relative_to nil
frame.set_visible true




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值