Таким образом, чтобы преобразовать приложение в плагин, общий рабочий процесс будет
быть чем-то вроде
Создайте дескриптор плагина FooGrailsPlugin.groovy. Самый простой способ сделать это - запустить плагин create-plugin name и скопировать
сгенерированный файл оттуда
удалить все из application.properties, кроме свойства app.grails.version
если у вас есть jar-файлы в каталоге lib, доступные в репозитории Maven, удалите их и замените зависимостями BuildConfig.groovy
изменить любые зависимости плагина и jar, которые необходимы для разработки и тестирования, но не, когда плагин установлен, чтобы не быть
экспортировано, добавив export = false
Если вам нужны скрипты _Install.groovy, _Uninstall.groovy или _Upgrade.groovy (вы, вероятно, этого не делаете), извлеките их из фиктивного плагина из шага 1 (но удалите все, что вам не нужно, они все
по желанию)
удалить ApplicationResources.groovy, если вы его не используете и не зависите от плагина ресурсов
переместить код из BootStrap.groovy init () в FooGrailsPlugin.doWithApplicationContext
и / илиFooGrailsPlugin.doWithDynamicMethods и destroy () для
FooGrailsPlugin.onShutdown и удалите BootStrap.groovy
добавить зависимость для плагина релиза в BuildConfig.groovy
удалить все, кроме конфигурации log4j из Config.groovy
удалить UrlMappings.groovy, если вы не экспортировали сопоставления; оставляйте только добавленные
переместить определения bean-компонентов из resources.groovy в FooGrailsPlugin.doWithSpring и удалить resources.groovy
удалить файлы пакета сообщений grails-app / i18n, если вы не добавили сообщения; оставляйте только добавленные
удалить все из grails-app / views, которые вы не используете (в частности, error.gsp, index.gsp и layouts / main.gsp)
удалить из веб-приложения все, что вы не используете (включая файлы WEB-INF xml и tld)
сейчас самое время написать те тесты, которые вы хотели получить до
создайте одно или несколько тестовых приложений для установки плагина, чтобы убедиться, что он работает как плагин; рассмотрите возможность написания сценария
написать документацию о том, как использовать плагин; как минимум файл README, но файлы Grails gdoc были бы намного лучше (запустите grails doc
- начать работу)