我试图在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/