Grails3项目插件源代码?

Grails3项目插件源代码?,grails,grails-plugin,grails3,Grails,Grails Plugin,Grails3,在Grails2和更早版本中,插件将其源代码安装到.grails//projects//plugins/etc,这使得调试已安装的插件变得很容易,而无需签出并加载完整的源代码。。。找出可能热部署的问题所在。无需在本地安装和运行插件 在grails 3中,这似乎缺失了。。。或者我只是错过了什么?在我的项目中,是否有什么地方可以直接修改插件源代码,而无需签出插件、编译插件,然后在本地安装插件?是的,您遗漏了一些非常重要的内容:) Grails2插件是作为ZIP文件(包括源代码)分发的,但Grails

在Grails2和更早版本中,插件将其源代码安装到
.grails//projects//plugins/etc
,这使得调试已安装的插件变得很容易,而无需签出并加载完整的源代码。。。找出可能热部署的问题所在。无需在本地安装和运行插件


在grails 3中,这似乎缺失了。。。或者我只是错过了什么?在我的项目中,是否有什么地方可以直接修改插件源代码,而无需签出插件、编译插件,然后在本地安装插件?

是的,您遗漏了一些非常重要的内容:)

Grails2插件是作为ZIP文件(包括源代码)分发的,但Grails3+插件是作为JAR文件分发的,代码编译成类。与之前的方法相比,这有多个好处,最大的一个好处是您不能再直接编辑源代码(这是更改插件工作方式的最糟糕方式)


相反,您应该做的是(在所有版本的Grails中)利用应用程序和已安装插件之间的编译/加载/解析顺序——首先加载插件,然后加载应用程序。这允许您通过在应用程序代码中创建具有相同名称和相同相对位置的文件(Groovy/Java/GSP/等)来覆盖插件中的几乎任何内容,并且它将自动覆盖插件的文件或类。例如,要覆盖插件的com.foo.BarController控制器,请在应用程序中创建grails app/controllers/com/foo/BarController.groovy(手动或通过复制原始源代码并对其进行修改)。

是的,您缺少了一些非常重要的内容:)

Grails2插件是作为ZIP文件(包括源代码)分发的,但Grails3+插件是作为JAR文件分发的,代码编译成类。与之前的方法相比,这有多个好处,最大的一个好处是您不能再直接编辑源代码(这是更改插件工作方式的最糟糕方式)


相反,您应该做的是(在所有版本的Grails中)利用应用程序和已安装插件之间的编译/加载/解析顺序——首先加载插件,然后加载应用程序。这允许您通过在应用程序代码中创建具有相同名称和相同相对位置的文件(Groovy/Java/GSP/等)来覆盖插件中的几乎任何内容,并且它将自动覆盖插件的文件或类。例如,要覆盖插件的com.foo.BarController控制器,请在应用程序中创建grails app/controllers/com/foo/BarController.groovy(手动或通过复制原始源代码并进行修改)。

太棒了,我完全不知道这个选项。多谢!为了澄清,我们使用这种方法只是为了调试代码以解决问题,然后再将其放入插件源代码中,而不是作为覆盖插件功能的方法。多谢!为了澄清这一点,我们使用这种方法只是为了在将代码放入插件源代码之前调试代码以解决问题,而不是作为覆盖插件功能的方法。