java - 当部署到独立的 tomcat 而不是 Eclipse 的 Tomcat 时,我基于 Spring 的 Restful web 服务给出 404

标签 java eclipse spring tomcat

我正在使用 Spring、Jpa Hibernate 创建一个 Restful Web 服务。它适用于 Eclipse 的 tomcat 服务器设置。但是当我尝试将它的 war 文件部署到独立的 tomcat 的 webapp 文件夹并重新启动服务器时,它给出了 404 错误。

可能是什么原因?部署到独立 tomcat 时我是否遗漏了一些步骤?

编辑:

原来通过mvn clean install打包war时,并没有打包我的web.xml和springcontext.xml。当我手动将这些文件复制到部署的 war 时,项目工作正常。

现在的问题是,有人知道为什么不打包这些文件吗。

最佳答案

默认情况下,Eclipse 项目将 Web 内容放在名为 WebContent 的文件夹中。这不是 maven 期望的地方,所以您应该通过右键单击 Project- 将您的 Eclipse 项目转换为 maven 项目->配置->转换为 Maven 项目。这将构建一个引用 WebContent 目录的 pom.xml:

  <plugin>
    <artifactId>maven-war-plugin</artifactId>
    <version>2.6</version>
    <configuration>
      <warSourceDirectory>WebContent</warSourceDirectory>
      <failOnMissingWebXml>false</failOnMissingWebXml>
    </configuration>
  </plugin>

关于java - 当部署到独立的 tomcat 而不是 Eclipse 的 Tomcat 时,我基于 Spring 的 Restful web 服务给出 404,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35494847/

相关文章:

java - 如何发布 JSP 代码更改,从 Eclipse 到 Tomcat

eclipse - 无法将 Maven WAR 项目部署到 JBoss : The selection did not contain any resources that can be run on a server

java - Gradle在构建期间将属性值或文件从gradle中排除,本地

java - Jackson JsonIgnore 在 kotlin 中不起作用

java - 4-sum 实现的二次时间

java - 在 for 循环中使用 thread.sleep

Java 夏令时和 hibernate

java - 为什么我的 ArrayList 包含添加到列表中的最后一项的 N 个副本?

eclipse - 将 Maven Web 应用程序运行到 Tomcat

java - Spring Boot 无法扫描多个模块的注释