Grails War和部署

时间:2010-09-24 14:50:11

标签: grails centos run-app run-war

我在windows xp和centos上使用grails 1.3.4。 Tomcat 5 on centos。

我在应用程序上做了'grails dev war'和'grails prod war'(以及我放在一起的测试应用程序)。我在xp上获取war文件并在另一个目录中展开它。在centos上,我可以将war文件放在tomcat中,也可以放在它自己的目录中。但是,当我去运行战争或运行应用程序解压缩的战争文件时,我被告知我的应用程序是0.5前的grails。我做了grails升级。但是当我再次运行app或run-war时,我得到0个域名0个控制器,没有任何东西可用。

我的应用程序在我战争之前的文件是1.3.4并且它运行,通过测试和完整的功能,但不是一次我战争它。有什么想法吗?

2 个答案:

答案 0 :(得分:3)

您无法在解压缩的war文件中使用run-app或run-war。两者都是从源项目本身使用的。 run-app直接运行嵌入式Tomcat(如果切换到该插件,则为Jetty),run-war构建一个war并将其部署到嵌入式Tomcat中。

当你构建一场战争(无论你是否打开包装)时,它将被Tomcat或其他servlet容器直接使用,而不是像'Grails war'那样,而是像其他任何战争一样。

基本上你的选择是:

    从项目根目录
  • 'grails run-app'以开发模式进行测试
  • 'grails prod run-war'从项目根目录来测试生产模式下的战争
  • 'grails war'部署到独立容器并作为已部署的应用程序运行

答案 1 :(得分:-2)

如果您使用数据源检查您的用户名和密码是否正确用于数据库连接