maven编译web项目显示“软件包 javax.servlet.http 不存在"

来源:互联网 发布:js获取json数组长度 编辑:程序博客网 时间:2024/06/05 17:39

maven项目编译报错:

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

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

解决方法一:

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

[java] view plain copy
print?
  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>


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

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

解决方法二:

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


参考:

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

JavaBuild Path--查看jdk版本

Java Compiler  -- 查看版本

Project Facets -- 查看java版本


三个版本要保持一致。



0 0
原创粉丝点击