Как установить плагин Grails из исходного кода?
Я получил исходный код плагина от друга, но до сих пор не знаю, как его установить в мой проект. Да, есть команда install-plugin, но этому плагину не разрешено загружать в корневой каталог плагинов grails.
Как установить плагин Grails из исходного кода?
UPDATE: плагин разработан для Grails 1.1, но мой текущий проект - Grails 1.3. Может ли это вызвать какие-либо проблемы?
Ответы
Ответ 1
Вы можете упаковать плагин в zip и установить из него.
Откройте командную строку в корневом каталоге, содержащем источник плагина, и запустите grails package-plugin
с параметром GRAILS_HOME, установленным для установки 1.1 Grails и $GRAILS_HOME/bin в вашем PATH. Это создаст zip файл, например. grails-myplugin-0.1.zip. Чтобы установить его, запустите grails install-plugin /path/to/grails-myplugin-0.1.zip
в содержащем приложении (используя 1.3).
У вас, вероятно, не возникнет проблем с установкой плагина 1.1 в приложении 1.3, но вы можете обновить его, если есть проблемы, или воспользоваться преимуществами более поздних версий Groovy и Grails.
Мой процесс обновления плагинов или приложений с большим промежутком в таких версиях состоит в том, чтобы не запускать grails upgrade
- это лучше всего подходит для более мелких дельта-версий, например. для обновления с 1.3.1 до 1.3.5.
Вместо этого я предлагаю создать новый пустой плагин в 1.1. Либо вручную, либо с помощью утилиты directory-diff, найдите все удаленные, добавленные и измененные файлы в плагине, если текущий плагин будет пустым. Затем создайте новый пустой плагин с помощью Grails 1.3.x. Перемещение по новым файлам, удаление удаленных файлов и внесение соответствующих изменений в отредактированные файлы.
Отредактированные файлы будут в основном находиться под grails-app/conf, поэтому вам нужно быть немного осторожным, так как некоторые вещи изменились. Но в целом это должно быть безопасно применять большинство или все изменения.
Ответ 2
Ответ Burt хорош, но другой вариант - просто скопировать все файлы плагина в подкаталог вашего проекта и проверить их. Затем вы можете указать свое приложение в этот каталог плагина в BuildConfig.groovy
:
grails.plugin.location.myplugin = 'myplugindir'
Таким образом, вам не придется беспокоиться об установке плагина снова, если вы строите на другом компьютере или очищаете свою папку .grails
.
Этот метод также полезен в случае, когда вы хотите разблокировать публичный плагин с вашими собственными изменениями (возможно, для локального исправления ошибок).
Ответ 3
Начиная с Grails 2.3, больше не возможно устанавливать плагины непосредственно из файловой системы.
что это означает: Нет больше возможностей использовать grails install-plugin
cmd.
Вместо этого вы должны использовать maven следующим образом:
cd /to/path/root/of/myPlugin/
grails maven-install
Перейдите к:
$HOME/.m2/repository/org/grails/plugins/
Вы найдете директорию с тем же именем вашего плагина:
$HOME/.m2/repository/org/grails/plugins/myPlugin
IT означает, что публикация плагинов как репозитория maven выполнена успешно.
Вот, перейдите в BuildConfig вашего основного приложения и добавьте в plugins
закрытие:
compile ":myPlugin:0.1"