我在jruby项目中使用了一个java类,在ruby中,我可以通过send方法为对象设置一个值。我在jruby中也是这样做的,但是我使用的是java_send方法。然而,当我尝试使用它时,我会得到以下错误TypeError: can't convert Java::JavaIo::File into Array from org/jruby/java/proxies/JavaProxy.java:321:in 'java_send'
我有一个java实例,我需要通过一个符号调用对象。下面是我在代码中所做的工作:
OUTPUT_FILES = [:make, :model]
javaArgs = javaArgs.new
OUTPUT_FILES.each do |filename|
file = java.io.File.new(path, "#{filename.to_s.underscore}.csv")
file.createNewFile
javaArgs.java_send(filename, file)
end为了确保当我做javaArgs.make = file时,它的工作没有任何问题。
发布于 2015-10-08 10:23:09
java_send期望其作为数组传递的参数:javaArgs.java_send filename, [ file ]
https://stackoverflow.com/questions/32976833
复制相似问题