Где правильно инициализировать метаклассы Groovy? - PullRequest
5 голосов
/ 01 августа 2011

Если вы хотите инициализировать метаклассы в приложении Groovy, где лучше всего разместить эти инициализации?В приложениях Grails я использовал файл Bootstrap.groovy.Есть ли что-то похожее для произвольного приложения Groovy?

Редактировать: Чтобы уточнить, я ищу ненавязчивый способ сделать это, чтобы гарантировать, что он вызывается при запуске основного приложения, а также в модулетесты связанного кода.

1 Ответ

8 голосов
/ 02 августа 2011

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


Добавлено из комментариев ниже :

Вы можете написать DelegatingMetaClass для каждого класса, который вы хотите украсить, и поместить его в пакет groovy.runtime.metaclass.[YOURPACKAGE].[YOURCLASS]MetaClass

Эта страница объясняет шаги, необходимые для этого (2-й элемент на странице)

...