开发环境:jdk:1.8,web服务器是Tomcat8.5,maven是3.6,搭建好环境后输入命令tomcat:run,然后就报
org.apache.jasper.JasperException: Unable to compile class for JSP错误
1、在pom文件中加上servlet-api、jsp-api包,为了防止包冲突,需要把<scope>改成provided
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.0</version>
<scope>provided</scope>
</dependency>
</dependencies>
maven默认使用Tomcat6,而我的JDK版本是1.8,Tomcat6不能与JDK1.8一起使用。只要将Tomcat的版本调高就行了
使用maven的Tomcat7插件:在pom文件中加入以下代码:
<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>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
</plugin>
</plugins>
</build>
然后将maven命令改为Tomcat7:run,成功运行。