eclipse——Maven创建JavaWeb工程

打包方式改为war

问题:webapp目录下缺少web.xml文件

先勾选掉Dynamic Web Services 点击Applay 再勾选上Dynamic Web Services ,目的是为了产生下面的链接。点击链接

在Content directory输入框内输入webapp的目录

 

 生成我们需要的目录和文件,

 

但是eclipse无缘无故有个红叉,(建议还是用IDEA吧,eclipse全是鸡肋) 

.jsp文件会报错:

  缺少HttpServlet.class,原因是该HttpServlet.class是由tomcat服务器实现的,而工程本地编译时,无法找到该类;解决办法:加入servlet-api的依赖,并把该依赖的范围设置为provided(该jar包不会部署到tomcat服务器)

①ServletAPI依赖

<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>servlet-api</artifactId>
    <version>2.5</version>
    <scope>provided</scope>
</dependency>    

  在jsp页面使用EL表达式时没有提示,解决办法加入以下依赖
②JSPAPI依赖

<dependency>
  <groupId>javax.servlet.jsp</groupId>
  <artifactId>jsp-api</artifactId>
  <version>2.1.3-b06</version>
  <scope>provided</scope>
</dependency>

注意:依赖的作用范围一定是provided,不然会和tomcat自身的jar包冲突。

原文地址:https://www.cnblogs.com/realshijing/p/8245288.html