环境:
操作系统: Windows10
IDE: Eclipse OXYGEN
JDK: 1.8
Tomcat: 8.0.5
目标:
使用Eclipse搭建一个较新的Web项目, 如Servlet使用3.1版本, JDK使用1.8等
正文:
1. 打开Eclipse, 在Project Explorer窗口空白处右键, 选择New -> Project... -> 选择Maven -> Maven Project
2. 1) 在接下里的对话框中, 去掉"Create a simple project (skip archetype selection)"的勾选, 点击下一步创建完整Maven项目
2) 然后在Filter 中输入 "webapp", 选择搜索出来的结果, 点击下一步
3. 输入项目组织标识符(通常为域名) 和项目名称, 点击Finish完成创建
扫描二维码关注公众号,回复:
2994121 查看本文章
以下为创建好的项目结构, 可以看到Eclipse默认的JDK版本还是较低的1.5版本已经JSP文件报错
4. 解决上面错误通常有两种方法:
1) 使用Eclipse解决, 项目右键, --> Properties --> Java Build Path
1.1) 解决JSP报错, 选择Add Library... --> Server Runtime --> 配置tomcat并确认
1.2) 使用高版本JDK, 鼠标选中 JRE System Library [J2SE-1.5] , 然后 Edit , 配置JDK并确认
2) 使用Maven解决, 报错原因是因为缺少Web相关依赖, 这些在运行时tomcat会提供, 我们在pom.xml里面把依赖加上就好了
2.1) 在pom.xml的 dependencies 下添加如下依赖
<!-- Servlet -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
<!-- JSP -->
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.2</version>
<scope>provided</scope>
</dependency>
2.2) 使用JDK1.8, 在pom.xml的 build 下添加如下配置
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
2.3) 更新, 右键项目, 选择Maven --> Update Project...
5. 更新web.xml约束, 修改后web.xml效果如下
<?xml version="1.0"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<display-name>SSM-DEMO</display-name>
</web-app>