[英]How to install Grails plugins through Maven pom.xml?
我正在用Maven建立一个Grails项目,这是我公司建立的必要方式。
在我的本地机器上,我以通常的方式安装了Grails插件grails install-plugin foo
。 当然,当项目由构建服务器上的Maven构建时,它对此插件一无所知。
我已经看到以下内容对于插件在Grails的plugins目录中可用的情况很有用:
<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>
但是假设插件根本不在机器上? 在Maven或Grails需要访问互联网查找插件的情况下, pluginUrl
会是什么?
编辑:
我发现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就能够构建项目,成功找到所有插件依赖项。
但它仍然无法在构建服务器上运行。 有任何想法吗?
尝试将此依赖项添加到您的pom.xml
<dependency>
<groupId>org.grails.plugins</groupId>
<artifactId>fields</artifactId>
<version>1.3</version>
<type>zip</type>
<scope>runtime</scope>
</dependency>
当你重新编译你的应用程序时,maven将下载并安装该插件
您需要使用Grails Maven插件,因此pom将通过更改插件列表进行更新。 看看描述Maven集成的Grails文档 ,特别是关于“对项目进行”整理的部分。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.