zoukankan      html  css  js  c++  java
  • Maven项目不能编译jsp解决方法:Unable to compile class for JSP

    一、问题描述:

    先交代开发环境,JDK是1.8的,IDE是eclipse 4.7,web服务器是Tomcat 9.0,maven是3.5.0,搭建好环境后输入命令tomcat:run,然后就报org.apache.jasper.JasperException: Unable to compile class for JSP错误。

    二、分析问题:

    (1)不能编译应该是没有导入servlet-api、jsp-api包的原因,然后就在pom文件中加上servlet-api、jsp-api包,为了防止包冲突,需要把<scope>改成provided。

     1 <dependency>
     2     <groupId>javax.servlet</groupId>
     3     <artifactId>servlet-api</artifactId>
     4     <version>2.5</version>
     5     <scope>provided</scope>
     6 </dependency>
     7 <dependency>
     8     <groupId>javax.servlet</groupId>
     9     <artifactId>jsp-api</artifactId>
    10     <version>2.0</version>
    11     <scope>provided</scope>
    12 </dependency>

    加上之后还是不行,然后就开始找度娘,开始第二个解决方案。

    (2)eclipse默认用的是自带的jre,需要我们自己改成下载好的JDK,在Window->Preference->Java->Installed JREs中添加自己下载的JDK并删除eclipse自带的jre。如图:

    运行之后还是不行,之后百度的大部分都是类似的解决方案,全部都不行,只好自己慢慢探索,从项目搭建到运行仔细检查一遍,终于发现问题。

    原来maven默认使用的是Tomcat6,而我使用的是JDK1.8,Tomcat6不能与JDK1.8一起使用。只要将Tomcat的版本调高就行了。

    (3)使用maven的Tomcat7插件:在pom文件中加上一下代码即可:

     1 <build>
     2     <plugins>
     3         <plugin>
     4             <groupId>org.apache.maven.plugins</groupId>
     5             <artifactId>maven-compiler-plugin</artifactId>
     6             <version>3.1</version>
     7             <configuration>
     8                 <source>1.8</source>
     9                 <target>1.8</target>
    10                 <encoding>utf-8</encoding>
    11             </configuration>
    12         </plugin>
    13         <plugin>
    14             <groupId>org.apache.tomcat.maven</groupId>
    15             <artifactId>tomcat7-maven-plugin</artifactId>
    16             <version>2.2</version>
    17         </plugin>
    18     </plugins>
    19 </build>

    然后将maven命令改为Tomcat7:run就行了。

  • 相关阅读:
    友链
    CF496E Distributing Parts(贪心)题解
    CF786C Till I Collapse(根号分治)题解
    CF578B "Or" Game(贪心)题解
    CF433C Ryouko's Memory Note(贪心)题解
    Luogu4177 [CEOI2008]order(网络流)题解
    骗分专辑
    CF718A Efim and Strange Grade(贪心)题解
    prufer序列--学习笔记
    bzoj3450 Tyvj1952 Easy(期望DP)题解
  • 原文地址:https://www.cnblogs.com/bk-jin/p/maven.html
Copyright © 2011-2022 走看看