使用grails Quartz插件(最新的稳定版本,0.4.2),我有四种不同的作业在我的开发环境中运行良好,其中大多数都是每分钟运行。
然而,在生产环境中,它们运行几分钟然后“死” - 它们就不再运行了。抛出或类似没有异常。该应用程序的其余部分仍然可以正常工作。
有人知道这可能是什么原因吗?我应该在哪里/如何开始分析问题?
答案 0 :(得分:2)
我还遇到了使用quartz-1.5.2.jar而不是石英插件中包含的quartz-1.7.3.jar的问题。我将它追溯到shiro中的一个依赖,它本身包含一个shiro-quartz.jar,它本身依赖于那个精确的石英版本。
我的解决方案是将其添加到我的BuildConfig.groovy
:
grails.project.dependency.resolution = {
...
dependencies {
compile("org.apache.shiro:shiro-quartz:1.0.0-incubating") {
excludes("quartz")
}
}
}
如果不是shiro,请尝试运行grails dependency-report
。从那里你可以找到错误的石英版本。
答案 1 :(得分:1)
我认为我发现问题基于this grails JIRA comment。
不知何故,除了quartz-1.7.3.jar之外,quartz-1.5.2.jar还在我的生产环境中。我删除了它,重新启动Tomcat后,它一直在工作(至少到现在为止)。