我使用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
但之前没有错误。所以我不知道哪些是错的。
或者接下来该做什么。有什么提示吗?
由于
答案 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中(文件名的日期部分当然可能不同)。