0
是否可以创建一个Gradle任务来执行Grails服务方法?执行Grails服务的Gradle任务
在我的Grails应用程序中,我有一个服务用于计算要在目标服务器上部署的数据,通常用于从浏览器调用Controller来生成数据,但我更愿意通过脚本为了在部署过程中仅包含自动命令。
注意:我不能仅仅实例化类,因为它需要运行Grails才能使用Hibernate和域类配置。
是否可以创建一个Gradle任务来执行Grails服务方法?执行Grails服务的Gradle任务
在我的Grails应用程序中,我有一个服务用于计算要在目标服务器上部署的数据,通常用于从浏览器调用Controller来生成数据,但我更愿意通过脚本为了在部署过程中仅包含自动命令。
注意:我不能仅仅实例化类,因为它需要运行Grails才能使用Hibernate和域类配置。
一种可能性是,使用石英插件开始与调度服务:
https://grails.org/plugin/quartz
的文档可以在这里找到:
http://grails-plugins.github.io/grails-quartz/guide/scheduling.html
一份工作开始服务看起来像这样:
class ImportJob {
static triggers = {
simple name: 'importJob', startDelay: 0, repeatInterval: 500 // execute job once in 500 milliseconds
}
def ighImportService
def concurrent = false
def execute() {
ighImportService.processNextChunk()
}
}
在此示例中,ighImporService被注入到importJob中,并且其processNextChunk()方法将每隔500毫秒加载一次。