我从朋友那里得到了插件的源代码,但仍然不知道如何将它安装到我的项目中。是的,有install-plugin命令,但是这个插件不允许上传到root grails插件目录。
如何从源代码安装grails插件?
更新:该插件是为Grails 1.1开发的,但我目前的项目是Grails 1.3。它会引起任何问题吗?
答案 0 :(得分:10)
您可以将插件打包成zip,然后从中安装。
在包含插件源的根目录中打开命令提示符,并运行grails package-plugin
并将GRAILS_HOME设置为1.1 Grails安装,并在PATH中设置$ GRAILS_HOME / bin。这将创建一个zip文件,例如grails-myplugin-0.1.zip。要安装它,请在包含的应用程序中运行grails install-plugin /path/to/grails-myplugin-0.1.zip
(使用1.3)。
在1.3应用程序中安装1.1插件可能没有任何问题,但如果存在问题,您可能需要升级,或者利用更新版本的Groovy和Grails的功能。
我在这样的版本中升级插件或应用程序的过程是不运行grails upgrade
- 这对于较小的版本增量最好,例如从1.3.1升级到1.3.5。
相反,我建议在1.1中创建一个新的空插件。手动或使用目录差异工具,通过将当前插件与空插件区分开来查找插件中的所有已删除,添加和修改的文件。然后使用Grails 1.3.x创建一个新的空插件。移动新文件,删除已删除的文件,并在编辑的文件中进行相应的更改。
编辑过的文件大部分都在grails-app / conf下,所以你需要稍微小心,因为有些东西已经改变了。但总的来说,应用大部分或全部变更应该是安全的。
答案 1 :(得分:10)
Burt的答案很好,但另一种选择是简单地将所有插件文件复制到项目的子目录中并检查它们。然后,您可以将应用程序指向BuildConfig.groovy
中的此插件目录:
grails.plugin.location.myplugin = 'myplugindir'
通过这种方式,您无需再次安装插件,以防您在另一台计算机上构建或清理.grails
文件夹。
如果您希望使用自己的自定义更改分叉公共插件(可能是本地错误修复),此方法也很有用。
答案 2 :(得分:6)
这意味着:不再可能使用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"