Что такое плагин Grails? Что значит установить плагин?

Недавно я использовал Grails и добавил плагин Grails для JQuery, но я не думаю, что он сделал что-то большее, чем просто скопировать некоторые файлы jQuery.

До сих пор я видел информацию только о том, как устанавливать и использовать плагины... но я не могу найти ничего, что описывает концепцию плагина.

Может кто-нибудь, пожалуйста, скажите мне, что такое плагин Grails? А что значит "установить" плагин?

Ответ 1

Плагин Grails является (или должен быть) автономным набором функциональных возможностей, который может быть установлен в приложении Grails. Когда установлен плагин Grails, он может выполнить любое из следующих действий:

  • определить дополнительные Spring beans
  • изменить сгенерированный web.xml
  • добавить новые методы в артефакты приложения (контроллеры, классы домена, службы и т.д.).
  • предоставить новые библиотеки тегов
  • предоставить дополнительные ресурсы и классы, доступные для приложения
  • предоставлять новые команды Grails

Например, когда вы устанавливаете плагин JQuery

  • файлы JavaScript JQuery добавляются в приложение
  • в приложение добавлен новый тег Grails <jq:jquery>
  • в приложение добавляется новая команда Grails grails install-plugin jquery

Когда вы устанавливаете плагин Grails, эта функциональность плагина становится доступной для установочного приложения. Однако сам плагин фактически не копируется в приложение, а только имя и версия плагина добавляются в файл приложения application.properties. Сам плагин загружается в $HOME/.grails, и приложение загружает его оттуда.

Структура проекта плагина Grails идентична структуре приложения Grails, за исключением файла конфигурации (известного как дескриптор плагина), который включен в корневой каталог плагина.

Ответ 2

Плагин - это всего лишь набор функций по желаемой цели. Таким образом, плагин Spring Security предоставляет возможность заблокировать ваше приложение, назначить роли пользователям, ограничить доступ, что угодно. Плагин Searchable позволяет интегрировать расширенный поиск в ваше приложение. Есть много плагинов

Цель состоит в том, чтобы обеспечить полезную функциональность, чтобы вам не приходилось выполнять сложные вещи самостоятельно. Кто-то сделал что-то полезное, и они хотели внести свой вклад в сообщество, поэтому они организовали свою функциональность и сделали ее доступной.

Плагин - это код и конфигурация, как и любая функциональность, которую вы бы реализовали самостоятельно.

Здесь есть документация: http://grails.org/doc/latest/ref/Plug-ins/Usage.html

Ответ 3

Ну, плагин Grails - это часть программного обеспечения, которое каким-то образом расширяет функциональные возможности фреймворка. Как правило, установка плагина в Grails означает копирование его в папку Grails, поэтому проекты могут ссылаться на него, и Grails будет знать, где его найти.

Плагины Grails имеют эту структуру папок:

  • Grails-приложение
    • Контроллеры
    • домен
    • TagLib
    • услуги
    • и т.д.
  • Lib
  • ЦСИ
    • ява
    • groovy
  • Веб-приложение
    • JS
    • CSS

Таким образом, все, что у него есть, также будет доступно для приложения, которое его использует. Например, плагин Searchable имеет класс обслуживания, который можно использовать для выполнения расширенных поисков в ваших собственных классах домена.

Плагин jQuery, о котором вы упомянули, имеет файл jQuery.js и тег для включения этого файла.

Информацию о создании плагинов см. в http://grails.org/doc/latest/guide/12.%20Plug-ins.html