Java ScriptEngine Поделиться глобальной областью - PullRequest
1 голос
/ 18 мая 2011

Я начал использовать ScriptEngine для написания кода Jython и решил, что аккуратным способом отладки может быть запуск кода Jython:

import code
code.interact(local=globals())

Я хочу поделиться внешней средой Java со средой ScriptEngine, поэтому, например, я мог бы вызывать другие методы объекта в классе или, если у меня были переменные, определенные ранее (например, аргументы функции), я мог бы использовать их. Я знаю, что могу явно загружать их с engine.put() и setBindings(), но я бы хотел, чтобы это делалось в основном автоматически. Есть ли что-то похожее на функцию Python globals() (или locals()) в Java, которая могла бы получить контекст текущего кода? Может быть, что-то с самоанализом ...

...