如何使用Groovy构建并返回一个新对象,使用来自第三方应用程序的其他对象?
基本上,我正在尝试使用Groovy构造一个C类型的对象。我正在将A和B对象推入JVM中 R(rGroovy包),使用粘合剂。我如何使用Groovy脚本编写这样的东西?我必须在不编写实际Java代码的情况下这样做。
以下是我想要做的事情,但是用Java。
import com.package_one.A;
import com.package_two.B;
import com.package_three.C;
class myClass{
public getC( A a, B b){
return new C(a,b));
}
public static void main(String[] args){
a = new A();
b = new B();
c = getC(a,b);
}
}
在rGroovy中,到目前为止,我已经能够做到这样的事情,将对象A和B推入活页夹。
R方:
variables = list()
variables["name1"] = JavaObjectA
variables["name2"] = JavaObjectB
groovyScript = paste(
"import com.package_one.A"
"import com.package_two.B",
"import com.package_three.C",
" ",
"println binder.name1.toString()",
sep="\n")
Evaluate(groovyScript,variables)
Output:
"com.package.A@2f92e0f4"
FYI, (我知道用Java编写一个简单的包装器并使用rJava从R调用它是很好的。但是由于我不应该使用Java代码而排除了它。)