Как установить плагины Grails через Maven pom.xml? - PullRequest
4 голосов
/ 14 ноября 2011

Я строю проект Grails с Maven, который является обязательным способом сборки в моей компании.

На моей локальной машине я установил плагин Grails обычным способом grails install-plugin foo.Конечно, когда проект собирается Maven на сервере сборки, он ничего не знает об этом плагине.

Я видел, что следующее может быть полезно для случая, когда плагин доступен в каталоге плагинов.из Grails:

<plugin> 
  <groupId>org.grails</groupId> 
  <artifactId>grails-maven-plugin</artifactId> 
  <version>1.1</version> 
  <extensions>true</extensions> 
  <executions> 
    <execution> 
      <id>create plugins folder</id> 
      <phase>validate</phase> 
      <goals> 
        <goal>install-plugin</goal> 
      </goals> 
      <configuration> 
        <pluginUrl>${env.GRAILS_HOME}/plugins/grails-hibernate-1.1.zip</pluginUrl>                 
      </configuration> 
    </execution> 
  </executions>           
</plugin> 

но предположим, что плагин вообще не был на машине?Что будет pluginUrl в случае, когда Maven или Grails нужно будет зайти в Интернет, чтобы найти плагин?

Редактировать:

Я нашелчто теги pluginName и pluginVersion полезны, и я добавил следующее выполнение к grails-maven-plugin:

<execution>
  <id>Hibernate plugin</id>
  <phase>validate</phase>
  <goals>
    <goal>install-plugin</goal>
  </goals>
  <configuration>
    <pluginName>hibernate</pluginName>
    <pluginVersion>1.3.7</pluginVersion>
  </configuration>
</execution>

Это почти работает.Если я извлекаю свой код в новом каталоге и удаляю содержимое моих каталогов плагинов, Maven сможет построить проект, успешно найдя все зависимости плагинов.

И все же он не работает в сборке.сервер.Есть идеи?

Ответы [ 2 ]

2 голосов
/ 12 февраля 2014

Попробуйте добавить эту зависимость в ваш pom.xml

<dependency>
    <groupId>org.grails.plugins</groupId>
    <artifactId>fields</artifactId>
    <version>1.3</version>
    <type>zip</type>
    <scope>runtime</scope>
</dependency>

при перекомпиляции вашего приложения maven загрузит и установит плагин

1 голос
/ 14 ноября 2011

Вам необходимо использовать плагин Grails Maven, чтобы pom обновлялся с изменениями в списке плагинов.Ознакомьтесь с документацией Grails, описывающей интеграцию Maven , особенно с разделом "mavenizing" проекта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...