如何在“战争”期间运行GrailsPlugin.groovy

如何在“战争”期间运行GrailsPlugin.groovy,grails,grails-plugin,Grails,Grails Plugin,Grails版本:2.3.11 亲爱的各位 我有一个插件,在doWithSpring闭包中,我使用一些中心资源在war中构建一个属性文件,然后在运行时使用该文件。只有在生产环境中构建war时,中心资源才可用,因此不可能将文件放入插件的/src中 目前,我的插件将在运行应用程序和测试环境中工作,但在运行“war”时,永远不会创建该文件 我尝试将scopes变量设置为包含war,但这似乎没有起到多大作用,或者至少没有调用doWithSpring闭包。有人知道怎么做吗?如果可能的话 所有的逻辑都在do

Grails版本:2.3.11

亲爱的各位

我有一个插件,在doWithSpring闭包中,我使用一些中心资源在war中构建一个属性文件,然后在运行时使用该文件。只有在生产环境中构建war时,中心资源才可用,因此不可能将文件放入插件的/src中

目前,我的插件将在运行应用程序和测试环境中工作,但在运行“war”时,永远不会创建该文件

我尝试将scopes变量设置为包含war,但这似乎没有起到多大作用,或者至少没有调用doWithSpring闭包。有人知道怎么做吗?如果可能的话

所有的逻辑都在doWithSpring中,它将委托给一个类,但这只是使用classLoader和grailsApplication,所以如果还有其他地方可以这样做,那也将非常好

谢谢


Adam

好的,最好的方法是用插件连接事件。我强烈建议您阅读上的文档。只需在插件中创建正确的文件并将代码放入关联的闭包中即可

例如:

脚本/_Events.groovy


您是否试图将文件排除在WAR中?你的问题不清楚,不。总之,我想知道如何在“war”过程中运行GrailsPlugin.config,因为我需要在war构建时执行doWithSpring闭包。如果这是不可能的,我想知道在war过程中是否有其他方式执行插件代码。
eventCreateWarStart = { warName, stagingDir ->
 // place your code here.
}