zoukankan      html  css  js  c++  java
  • maven编译web项目显示“软件包 javax.servlet.http 不存在"

    maven项目编译报错:

    [java] view plain copy
     
     
     
    1. 软件包 javax.servlet 不存在  
    2. import javax.servlet.*;  
    1.  
      软件包 javax.servlet 不存在
    2.  
      import javax.servlet.*;

    明明tomcat下面的lib自带有这些包,却依然加载失败,

    解决方法一:

    在pom.xml里面重新引入这个包

    [java] view plain copy
     
     
     
    1. <dependency>  
    2.     <groupId>javax.servlet</groupId>  
    3.     <artifactId>servlet-api</artifactId>  
    4.     <version>2.5</version>  
    5.     <scope>provided</scope>  
    6. </dependency> 

          <!-- servlet相关 -->
            <dependency>
                <groupId>javax.servlet</groupId>
                <artifactId>javax.servlet-api</artifactId>
                <version>3.0.1</version>
                <scope>provided</scope>
            </dependency>

    1.  
      <dependency>
    2.  
      <groupId>javax.servlet</groupId>
    3.  
      <artifactId>servlet-api</artifactId>
    4.  
      <version>2.5</version>
    5.  
      <scope>provided</scope>
    6.  
      </dependency>


    但是这个方法容易会跟tomcat里面的包冲突,会报这个错误:

    [java] view plain copy
     
     
     
    1. jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class    
    jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class  


    解决方法二:

    右键,buildPath,自己手动从tomcat目录下的lib包里添加外部jar包。

    参考:

    项目--右键--属性-->

    Java Build Path--查看jdk版本

    Java Compiler  -- 查看版本

    Project Facets -- 查看java版本

    三个版本要保持一致。

  • 相关阅读:
    不要对春运抱有幻想
    初识HTTP消息头(一)
    java中ArrayList 、LinkList区别以及速度对比
    jar包和war包的区别
    LUA 日期处理
    NGINXLUA——变量浅谈
    JDK和JRE的区别
    理解HTTP消息头 (五)——使用multipart/formdata上传文件
    安装Jetty
    TOMCATJARWAR事例讲解
  • 原文地址:https://www.cnblogs.com/telwanggs/p/13095124.html
Copyright © 2011-2022 走看看