我试图在Java应用程序中使用Beanshell执行用户提供的“附加”文件。由于插件的“主”代码是在重复循环中调用的,因此某些插件需要使用在此代码范围之外初始化的全局变量,以便跟踪需要多个循环周期的事物。我正在尝试通过将beanshell解释器设置为

interpreter.eval("float xPositions;");

while(condition) {

interpreter.eval("xpositions++;");

}


问题在于,当beanshell获得第二个eval时,就忘记了该变量存在。有没有办法阻止它这样做?

最佳答案

这是要走的路:interpreter.set(“ myVarName”,myValue);

顺便说一句:有一个错误修复的beanshell版本,在http://code.google.com/p/beanshell2处称为beanshell2。

关于java - 防止变量死在Beanshell中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3421460/

10-12 01:26