2012-08-06 42 views
0

我想顺序解析MVEL如下:如何创建MVEL评估环境?

HashMap myData = new HashMap(){{ put("x", 1); }} 

eval("y = 2", ...) // assign value to y 
... 
eval("x + y", myData, ...) // expect 3 

这可能吗?如果是这样,怎么样?

回答

2

只要共享变量解析器跨越表达评价:

VariableResolverFactory瓦尔=新MapVariableResolverFactory(新的HashMap(){{放( “X”,1);}}); MVEL.eval(“y + 2”,vars): MVEL.eval(“x + y”,vars);

+1

谢谢。 MVEL非常方便,但像许多开源组件一样,文档可以得到改进。 – 2012-09-01 16:52:54