Grails war命令不设置环境

时间:2013-09-07 22:14:11

标签: grails tomcat6 war

我使用grails run-app -Dgrails.env=myenv使用嵌入式容器运行应用程序,它运行正常。然后我grails war -Dgrails.env=myenv将它部署在Tomcat 6服务器上,它不起作用。一旦我将log4j jar添加到Tomcat lib的目录中,我就会收到一堆log4J错误。 lo4j错误现在消失了。我留下了:

INFO: Deploying web application archive qkr2.war
Sep 7, 2013 11:09:54 PM org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
Sep 7, 2013 11:09:54 PM org.apache.catalina.core.StandardContext start
SEVERE: Context [/mk2] startup failed due to previous errors

但之前没有错误。所以我不知道哪些是错的。
或者接下来该做什么。有什么提示吗?

由于

2 个答案:

答案 0 :(得分:1)

根据http://grails.org/doc/latest/ref/Command%20Line/war.html,环境在命令的“战争”部分之前出现,所以可能就是这样。即命令应为:

grails -Dgrails.env=myenv war

检查日志记录,看看Grails认为它开始的环境。否则,我会尝试在Tomcat启动时添加环境变量,而不是为不同的环境构建不同的战争。

这一切都假设在myenv环境中日志配置是正确的。如果没有,那么我不能告诉你为什么没有更多的日志记录就没有开始。

答案 1 :(得分:1)

当您看到部署到Tomcat的“SEVERE:Error listenerStart”时,请查看日志文件。通常,您会发现错误位于stacktrace.log或localhost.2013-09-07.log中(文件名的日期部分当然可能不同)。