Java + механизмы сценариев: различия между JSR223 и аналогичными альтернативами

Я начал сталкиваться с некоторыми действительно раздражающими проблемами при использовании интерфейсов JSR223 для Rhino:

  • плохая информация об исключении (см. мой другой вопрос SO)
  • невозможность использования ScriptableObject (было бы неплохо установите для переменной Javascript foo значение Javascript со свойствами, чтобы я мог установить foo.bar на что-то, а foo.baz на что-то еще. JSR223 просто позволяет мне устанавливать корневые глобальные переменные в значения Java.)
  • невозможность установить переменные/свойства только для чтения

При необходимости я бы подумал о переходе на Rhino как на собственный скриптовый движок, но это связано с невозможностью поддерживать другие языки без дополнительных усилий.

Есть ли лучший уровень абстракции, кроме JSR223?

Я слышал о Bean Scripting Framework, но не уверен, чем он отличается/хуже/лучше. Я также наткнулся на Scripturian и понятия не имею об этом.


person Jason S    schedule 05.04.2011    source источник


Ответы (1)


На самом деле это не ответ, но из моего скромного ограниченного исследования jsr223 и bsf довольно просты и на самом деле не подходят для более мощного встраивания. Если вы действительно хотите улучшить интеграцию, вам нужно использовать собственный мост.

person mP.    schedule 01.08.2011