java - 如果在 Maven 插件 Tomcat 7 上运行,为什么不能在 Tomcat 8 上运行 Java Web 应用程序?

标签 java tomcat intellij-idea tomcat7 tomcat8

我有一个基于 Maven 的简单项目。我在 pom.xml 中使用 tomcat 7 的插件:

<plugin>
  <groupId>org.apache.tomcat.maven</groupId>
  <artifactId>tomcat7-maven-plugin</artifactId>
  <version>2.2</version>
  <configuration>
    <path>/</path>
      <port>9090</port>
  </configuration>
</plugin>

当我使用这个 Tomcat 7 插件通过 Intellij 运行我的项目时,一切正常。问题是当我配置到 Intellij 时,例如Tomcat 8,当我运行它时,我得到了如下通信:

HTTP Status 404 – Not Found

Type Status Report

Message Not found

Description The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.

可能是什么原因在插件 Tomcat 7 上一切正常,但在 Tomcat 8 上不起作用(没有插件,只是简单的配置)?

enter image description here

我的 web.xml 文件如下所示:

<!DOCTYPE web-app PUBLIC
        "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
        "http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>

    <servlet>
        <servlet-name>ServletAddAdvertisement</servlet-name>
        <servlet-class>com.tom.servlets.ServletAddAdvertisement</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>ServletAddAdvertisement</servlet-name>
        <url-pattern>/ServletAddAdvertisement</url-pattern>
    </servlet-mapping>

</web-app>

我认为在部署期间 Tomcat 没有看到 war 文件。应该有一些方法可以通过部署描述符来指定/配置它。当我在 Tomcat 8 上手动部署我的 myPorject.war 文件时,一切正常。

谢谢。

最佳答案

在 Intellij 中配置服务器有一个选项 Edit Configuration -> Tomcat Server -> Deployment -> 在那里你需要选择 appreciate Artifact。

关于java - 如果在 Maven 插件 Tomcat 7 上运行,为什么不能在 Tomcat 8 上运行 Java Web 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51532836/

相关文章:

java - Unity3D 与 Eclipse for Android 项目集成

java - 每个具有不同 ID 名称的类继承的 JPA 表

java - 为什么不对 JAX-RS 中的所有资源使用异步响应?

java - Fiddler java https - "unable to find valid certification path to requested target"

java - 包 org.jetbrains.annotations 不存在

java - 无法使用 SDK 打开 Facebook session

java - 如何在两种颜色之间进行插值?

java - 从 lib 目录加载 jar 文件的顺序

java - Tomcat 错误 : java. sql.SQLException: No suitable driver found for jdbc:sqlserver://

java - Intellij Idea中,如何持续显示上下文信息?