Grails中依赖项和插件之间的区别是什么?

时间:2014-09-24 09:57:26

标签: grails

在使用Grails一年后,我仍然无法区分依赖项和插件之间的区别,所以我不知道在哪里声明每个和为什么。

我曾经认为依赖项是Java JAR,但事实并非如此,因为我宣称我们创建了一些插件作为依赖项,Grails仍然将它们识别为插件。

我现在最好的猜测是没有进一步的区别,除了默认情况下会导出插件。我是对的吗?

提前致谢。

2 个答案:

答案 0 :(得分:2)

正如Grails参考指南中所述,这些是插件http://grails.org/doc/latest/guide/plugins.html,即Grails Platform的扩展,您可以插入它们以增强Grails应用程序的功能。您可以编写自己的所有者,甚至可以在Grails中央存储库中发布它们。

依赖关系是无法与Grails本身共享的JAR。例如:JTS(众所周知的Java拓扑套件,计算几何库)可能是您的GIS应用程序的依赖项,绝对不是插件!

有时这两个概念重叠,因为人们编写的插件是外部依赖的包装器,我正在考虑使用ANgularJS插件。

答案 1 :(得分:2)

简单地说:

插件通过修改应用程序的运行时配置来影响应用程序的实时循环,它们可以参与编译和引导阶段并扩展现有的类(如GORM一样)。

此外,作为Grails野兽,插件可以具有与Grails应用程序完全相同的人工制品类型。

最后但并非最不重要的一点是,这些插件可以独立运行,无需安装到应用程序中。