星期一, 二月 21, 2005

如何在GroovyShell中嵌套执行脚本?

问题:在Groovy Script中,还有部分脚本来自其他媒体,比如数据库中.
需要把数据库中的代码和当前脚本一起混合执行.

解决:在当前Groovy Script中,用evaluate(String Script)来执行.
就可以了.
比如下列代码:
payitem=null;
CURRENT_CATAGORY.find(){if(it.payitemcode==Payitemcode)payitem=it}
evaluate(payitem.businessrule);

一段可以完全执行演示的代码:
import java.util.*;

mine=new ArrayList();
mine.add("123");
mine.add("3454");
script="evaluate(\"println('1sfdas')\n\");";
//keep variable self
evaluate(script);
打印出来