繁体   English   中英

如何在Grails 2.0中运行本地插件?

[英]How to run a local plugin in Grails 2.0?

在Grails中,有一个变体如何从源代码中包含本地插件。 根据文档,可以输入BuildConfig.groovy

// Useful to test plugins you are developing.
grails.plugin.location.shiro =
        "/home/dilbert/dev/plugins/grails-shiro"

// Useful for modular applications where all plugins and
// applications are in the same directory.
grails.plugin.location.'grails-ui' = "../grails-grails-ui"

问题是它在Grails 2.0.RC1中不起作用。 我已经尝试过grails clean ,用grails install-plugin并将它放到BuildConfig.groovy 仍然无法解决。

这适合我

grails.plugin.location.shiro = "/home/dilbert/dev/plugins/grails-shiro"

其中shiro是插件的名称(不是它所在目录的名称)。 确保插件的路径是绝对路径或应用程序插件的相对路径。

我发现如果插件在application.propertiesBuildConfig.groovy列出,这有时不起作用,所以如果是,删除它,然后执行grails clean并重新启动应用程序。

您还可以将插件安装到本地maven缓存中。

文档说明了这一点:

3.7.10部署到Maven资源库

maven-install

maven-install命令会将Grails项目或插件工件安装到本地Maven缓存中:

grails maven-install

这样做的好处是允许您使用更常见的":plugin-name:version"语法将插件包含在父应用程序中

这允许您的应用程序确定在生产中检索插件的最佳位置。 来自内部maven-repo或同等产品。

使用Grails 3.x还有另一种方法可以做到这一点。 假设您在同一个项目目录中有一个grails应用程序和插件(源代码):

/my-project
---/my-app
---/grails-shiro

要运行本地插件,必须在my-project目录中创建一个settings.gradle文件,指定应用程序和插件的位置:

 include 'my-app', 'grails-shiro'

然后在应用程序的build.gradle中添加依赖项:

 compile project(':grails-shiro')

你做完了

查看插件文档以获取更多信息。

如果插件名称包含短划线,请使用引号括起插件名称:

grails.plugin.location.'plugin-name-with-dashes' = "<path>"

您可以在/ lib中为插件添加.zip文件,它将被安装。

例:

compile ":myPlugin:1.0"

文件:

/lib/myPlugin-1.0.zip

注意:您必须压缩插件文件夹的内容。

资料来源: http//grails.1312388.n4.nabble.com/Insert-own-local-plugin-into-build-config-td4646704.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM