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

时间:2018-07-26 07:03:26

标签: 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文件时,一切正常。

谢谢。

1 个答案:

答案 0 :(得分:0)

在Intellij中配置服务器,有一个选项编辑配置-> Tomcat服务器->部署->您需要选择欣赏Artifact。