获取TypeError:错误的参数类型包含java_import的Array(预期模块)

时间:2013-01-26 00:03:21

标签: java include jruby

我刚开始使用JRuby,当我测试以下代码保存为脚本

include java_import
frame = javax.swing.JFrame.new
frame.getContentPane.add javax.swing.JLabel.new('Hello, World!')
frame.setDefaultCloseOperation javax.swing.JFrame::EXIT_ON_CLOSE
frame.pack
frame.set_visible true

我收到以下错误

Switch to inspect mode.
irb(main):001:0> include java_import
TypeError: wrong argument type Array (expected Module)
    from org/jruby/RubyModule.java:2068:in `include'
    from (irb):1:in `evaluate'
    from org/jruby/RubyKernel.java:1066:in `eval'
    from org/jruby/RubyKernel.java:1392:in `loop'
    from org/jruby/RubyKernel.java:1174:in `catch'
    from org/jruby/RubyKernel.java:1174:in `catch'
    from C:\jruby-1.7.2\/bin/jirb_swing:54:in `(root)'
irb(main):002:0>

有人能帮我辨别我做错了什么吗?我安装了jruby-1.7.2(C:\ jruby-1.7.2),在系统变量中添加到PATH,并在Windows 7上运行。在命令提示符下,我可以正确测试jruby和java版本

我还通过jruby(1.9.3).exe和提示键入

启动了jirb_swing
irb(main):001:0> include java_import 

我收到相同的错误消息

更新

大家好

在JRuby和Java的Internet页面上进一步搜索后,我已成功解决了这个问题。

首先,我从JRuby调用Java时有两种方法:

  1. 使用“include Java”(我的脚本文件中没有引号,大写字母J)
  2. 使用“require'java'”(没有“引号并注意java周围的单引号,现在以小写j开头)
  3. 我正在使用的“java_import”是一个错误,因为我在GitHub上阅读了详细的文档(https://github.com/jruby/jruby/wiki/CallingJavaFromJRuby

    我将更多地研究使用“包含”与“需求”语句之间的差异或缺乏,并回发。作为一个真正的新手,这是一个真正的大开眼界

0 个答案:

没有答案