zoukankan      html  css  js  c++  java
  • Cannot change version of project facet Dynamic Web Module to 3.0 requires Java 1.6 or newer 解决方案

    Eclipse Maven 开发一个 jee 项目时,编译时遇到以下错误
    Description Resource Path Location Type
    Dynamic Web Module 3.0 requires Java 1.6 or newer. bdp line 1 Maven Java EE Configuration Problem

    Description Resource Path Location Type
    One or more constraints have not been satisfied. bdp line 1 Maven Java EE Configuration Problem
    如图:
    Dynamic Web Module 3.0 requires Java 1.6 or newer
    但是 Eclipse 明明已经将编译级别设置为 1.7:
    Eclipse compiler
    这是由于你的 Maven 编译级别是 jdk1.5 或以下,而你导入了 jdk1.6 以上的依赖包:查看 Eclipse 的 Navigator 视图下该项目的 .classpath 文件:

    [html] view plain copy
     
     print?
    1. <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5">  
    2.     <attributes>  
    3.         <attribute name="maven.pomderived" value="true"/>  
    4.     </attributes>  
    5. </classpathentry>  


    解决办法
    使用 maven-compiler-plugin 将 maven 编译级别改为 jdk1.6 以上:

    [html] view plain copy
     
     print?
      1. <build>  
      2.     <plugins>  
      3.         <!-- define the project compile level -->  
      4.         <plugin>  
      5.             <groupId>org.apache.maven.plugins</groupId>  
      6.             <artifactId>maven-compiler-plugin</artifactId>  
      7.             <version>2.3.2</version>  
      8.             <configuration>  
      9.                 <source>1.7</source>  
      10.                 <target>1.7</target>  
      11.             </configuration>  
      12.         </plugin>  
      13.     </plugins>  
      14. </build

    dynamic web module 版本之间的区别:

    Servlet 3.0 December 2009 JavaEE 6, JavaSE 6 Pluggability, Ease of development, Async Servlet, Security, File Uploading
    Servlet 2.5 September 2005 JavaEE 5, JavaSE 5 Requires JavaSE 5, supports annotations
    Servlet 2.4 November 2003 J2EE 1.4, J2SE 1.3 web.xml


    错误Cannot change version of project facet Dynamic Web Module to 3.0:
    在项目右键属性的Project facts中把Dynamci Web Module设置为3.0,如果报错则直接修改项目文件:工程.settings目录下的org.eclipse.wst.common.project.facet.core.xml,同时把web.xml开头设置由2.5改成3.0为:

        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
    然后执行项目右键Maven的Update Project...即可。

  • 相关阅读:
    基本操作——word中怎样同一页中放入多张图片
    计算机概念入门(二)
    计算机概念入门(一)
    关于黑苹果系统的耳机声音模糊不清问题
    开源项目
    尚硅谷官网资料导航
    this
    最棒的 JavaScript 学习指南(2018版)(转)
    前端文摘:深入解析浏览器的幕后工作原理(转)
    闭包,模块化
  • 原文地址:https://www.cnblogs.com/nizuimeiabc1/p/8204510.html
Copyright © 2011-2022 走看看