我有一个运动衫网络应用程序,用IntelliJ的想法作为IDE。我使用maven (pom.xml)作为项目管理器工具-用于依赖关系库管理器。
我使用此调试配置:
服务器->应用服务器:Tomcat9.0.24 URL:http://localhost:8080/
部署-> :war爆炸性应用程序上下文:/
然后,当我按下调试按钮、项目编译和部署工件时,浏览器将打开欢迎页(这是静态页面)。
我使用邮递员发送GET或POST或PUT请求,给出正确的响应。
当我构建/工件.时,IntelliJ IDEA创建了.war文件。
我把war文件放到远程Tomcat容器webapp文件夹中--和localhost一样--使用ROOT.war名称。
tomcat catalina.out文件具有以下消息:
208-2019 11:41:06.528 INFO主org.apache.coyote.AbstractProtocol.init初始化ProtocolHandler "http-nio-8080“20-2019 11:41:06.546 INFO主org.apache.coyote.AbstractProtocol.init初始化ProtocolHandler "ajp-nio-8009”20-8月-2019 11:41:06.551 INFO主org.apache.catalina.startup.Catalina.load服务器初始化在393毫秒20-8月-2019 11:41:06.587 INFO主org.apache.catalina.core.StandardService启动服务Catalina 20-2019 11:41:06.587 INFO主org.apache.catalina.core.StandardEngine.startInternal启动Servlet引擎: Apache /9.0.24 20--2019-2019:41:06.603 INFO主org.apache.catalina.startup.HostConfig.deployWAR部署web应用程序存档/root/apache 9.0.24/webapp/ROOT.war 20-2019-2019-2019:41:08.434 INFO主org.apache.jasper.servlet.TldScanner.scanJars扫描了至少一个JAR,但没有包含TLDs。为此记录器启用调试日志记录,以便获得扫描的JAR的完整列表,但其中没有发现TLD。在扫描过程中跳过不需要的JAR可以缩短启动时间和JSP编译时间。208-2019 11:41:08.469 INFO web应用程序存档/root/apache-tomcat-9.0.24/webapp/rot.war的主org.apache.catalina.startup.HostConfig.deployWAR部署在1,867 ms内完成。
我用邮递员发送同样的请求,得到404错误。使用邮递员访问静态页面,没关系。
我搜索一些东西,但不适合我的场景。这里没有tomcat应用程序上下文正确,也没有war文件不正确。
我的项目不是web.xml文件。但我附上的是web.xml,而不是运气。
我将tomcat7-maven-插件附加到pom.xml文件中。没有效果。
将org.glassfish.jersey.bundles jaxrs-ri附加到pom.xml。一样的。
@ApplicationPath("/api")
public class RestApplication extends ResourceConfig {我使用了JAX的这个应用程序.所以我访问http://host-name:8080/api/.,猫给我找不到。
我查找tomcat访问日志(localhost_ access _log.2019-MM-DD.txt),给我以下消息:
114.249.235.124 - 20/Aug/2019:11:53:12 +0800 "GET /api/subjects /1.1“404 1047
为什么IntelliJ IDEA启动tomcat并部署该项目是好的,我使用IntelliJ IDEA构建war文件并将其放到tomcat /ROOT.war不工作?
问题在哪里?
发布于 2021-01-09 02:09:10
是的,问题解决了。由不同的Java版本引起的。我的机器上的Java是一个高版本,但是服务器上的Java版本相对较低
https://stackoverflow.com/questions/57566907
复制相似问题