Java アプリケーションで Beanshell を使用して、ユーザーから提供された「アドオン」ファイルを実行しようとしています。アドオンの「メイン」コードは繰り返しループで呼び出されるため、一部のアドオンは、複数のループ サイクルを必要とするものを追跡するために、このコードの範囲外で初期化されたグローバル変数を使用する必要があります。ビーンシェルインタープリターを次のように設定して、これを実行しようとしています
interpreter.eval("float xPositions;");
while(condition) {
interpreter.eval("xpositions++;");
}
問題は、beanshell が 2 番目の評価を取得するまでに、変数が存在することを忘れていることです。これを止める方法はありますか?