gpt4 book ai didi

tomcat - 在 apache tomcat 中部署 grails 3.1.7 的问题

转载 作者:行者123 更新时间:2023-11-28 22:27:14 26 4
gpt4 key购买 nike

我的应用程序在开发模式下运行良好,我已经在开发模式下运行它进行了几次测试。我相信我已经阅读了足够多的关于将 grails 应用程序部署为 servlet 容器中的 war 的文章。

我已将嵌入式 tomcat 的范围更改为提供

provided "org.springframework.boot:spring-boot-starter-tomcat"

我使用命令 grails war 生成了 war ,其输出如下:

grails war
:compileJava UP-TO-DATE
:compileGroovy UP-TO-DATE
:findMainClass
:assetCompile UP-TO-DATE
:buildProperties
:processResources UP-TO-DATE
:classes UP-TO-DATE
:compileWebappGroovyPages UP-TO-DATE
:compileGroovyPages UP-TO-DATE
:war
:bootRepackage
:assemble

BUILD SUCCESSFUL

| Built application to build/libs using environment: production

当我在 tomcat7 和 tomcat8.0.33(嵌入式版本)上部署时,它仍然给我这个错误:

Caused by: java.lang.NoSuchMethodError: com.mongodb.MongoClient.getDefaultCodecRegistry()Lorg/bson/codecs/configuration/CodecRegistry

完整堆栈在 pastebin 中可用.

但有趣的是,当我使用下面的命令运行它时,在安装了 tomcat 的同一个盒子上,它运行良好:

 java -Dgrails.env=prod -Dserver.port=9090 -jar my-grails-app-0.1.war

我真的很想用 tomcat 完成这项工作。我不确定我是否错过了任何步骤。任何人都可以对此有所了解吗?提前致谢

最佳答案

您正在使用旧驱动程序 mongo-java-driver-2.13.3 没有方法 com.mongodb.MongoClient.getDefaultCodecRegistry()。此方法是在 3.0( link ) 中引入的,因此升级您的驱动程序应该可以解决该问题。

关于tomcat - 在 apache tomcat 中部署 grails 3.1.7 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38521452/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com