`

解决Cannot change version of project facet Dynamic web module to 2.5

阅读更多
我们用Eclipse创建Maven结构的web项目的时候选择了Artifact Id为maven-artchetype-webapp,由于这个catalog比较老,用的servlet还是2.3的,而一般现在至少都是2.5,在Project Facets里面修改Dynamic web module为2.5的时候就会出现Cannot change version of project facet Dynamic web module to 2.5,如图:





其实在右边可以看到改到2.5需要的条件以及有冲突的facets,解决这个问题的步骤如下:
1.把Servlet改成2.5,打开项目的web.xml,改之前:

<!DOCTYPE web-app PUBLIC  
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"  
 "http://java.sun.com/dtd/web-app_2_3.dtd" >  
  
<web-app>  
  <display-name>Archetype Created Web Application</display-name>  
</web-app>  


改后:
<?xml version="1.0" encoding="UTF-8"?>  
<web-app version="2.5"  
    xmlns="http://java.sun.com/xml/ns/javaee"  
    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_2_5.xsd">  
      
  <display-name>Archetype Created Web Application</display-name>  
</web-app> 

2.修改项目的设置,在Navigator下打开项目.settings目录下的org.eclipse.jdt.core.prefs

eclipse.preferences.version=1  
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled  
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5  
org.eclipse.jdt.core.compiler.compliance=1.5  
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error  
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error  
org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning  
org.eclipse.jdt.core.compiler.source=1.5  


把1.5改成1.6

eclipse.preferences.version=1  
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled  
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6  
org.eclipse.jdt.core.compiler.compliance=1.6  
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error  
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error  
org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning  
org.eclipse.jdt.core.compiler.source=1.6 


打开org.eclipse.wst.common.component

<?xml version="1.0" encoding="UTF-8"?>  
<project-modules id="moduleCoreId" project-version="1.5.0">  
    <wb-module deploy-name="test">  
        <wb-resource deploy-path="/" source-path="/target/m2e-wtp/web-resources"/>  
        <wb-resource deploy-path="/" source-path="/src/main/webapp" tag="defaultRootSource"/>  
        <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/java"/>  
        <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/resources"/>  
        <property name="context-root" value="test"/>  
        <property name="java-output-path" value="/test/target/classes"/>  
    </wb-module>  
</project-modules>  


把project-version="1.5.0"改成project-version="1.6.0"

<?xml version="1.0" encoding="UTF-8"?>  
<project-modules id="moduleCoreId" project-version="1.6.0">  
    <wb-module deploy-name="test">  
        <wb-resource deploy-path="/" source-path="/target/m2e-wtp/web-resources"/>  
        <wb-resource deploy-path="/" source-path="/src/main/webapp" tag="defaultRootSource"/>  
        <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/java"/>  
        <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/resources"/>  
        <property name="context-root" value="test"/>  
        <property name="java-output-path" value="/test/target/classes"/>  
    </wb-module>  
</project-modules>  


打开org.eclipse.wst.common.project.facet.core.xml

<?xml version="1.0" encoding="UTF-8"?>  
<faceted-project>  
  <fixed facet="wst.jsdt.web"/>  
  <installed facet="java" version="1.5"/>  
  <installed facet="jst.web" version="2.3"/>  
  <installed facet="wst.jsdt.web" version="1.0"/>  
</faceted-project>  


把<installed facet="java" version="1.5"/>改成<installed facet="java" version="1.6"/>,把  <installed facet="jst.web" version="2.3"/>改成  <installed facet="jst.web" version="2.5"/>

<?xml version="1.0" encoding="UTF-8"?>  
<faceted-project>  
  <fixed facet="wst.jsdt.web"/>  
  <installed facet="java" version="1.6"/>  
  <installed facet="jst.web" version="2.5"/>  
  <installed facet="wst.jsdt.web" version="1.0"/>  
</faceted-project>


都改好之后在打开看看,已经把Dynamic web module改成了2.5





好了,大功搞成,这是一种解决办法,但是治标不治本,更高级的就是自定义catalog,然后安装到本地,再创建的时候啥都有了,比如把现在流行的s(struts2)sh,ssi,s(springmvc)sh 创建catalog,包括包结构,部分代码啥的都有,下次写吧。
  • 大小: 134.7 KB
  • 大小: 131.5 KB
分享到:
评论

相关推荐

    关于eclipse发布web项目中遇到的问题

    在发布项目时,可能会出现“Project facet Dynamic Web Module version3.0 is not supported”的错误信息。这是因为 Eclipse 工作目录下的项目文件中,org.eclipse.wst.common.project.facet.core.xml 文件中的 jst....

    向eclipse中导入外部项目

    解决方法是:在 Eclipse 安装文件里面的 .setting 文件里面的 org.eclipse.wst.common.project.facet.core.xml 文件,修改 &lt;installed facet="jst.web" version="3.0"/&gt; 为 &lt;installed facet="jst.web" version="2.5...

    maven搭建工程问题集锦

    #### 一、问题1: Cannot change version of project facet DynamicWebModule to 3.0. **问题描述**: 在配置或更新项目的web模块版本时,可能会出现无法更改DynamicWebModule到3.0版本的问题。这通常是由于项目的...

    把外部项目导入eclipse

    &lt;installed facet="jst.web" version="2.5"/&gt; ... &lt;/faceted-project&gt; ``` 解决端口号已经使用的问题 在 Tomcat 的配置文件中,修改端口号,例如从 8080 改为 8081。 安装 Tomcat 插件 下载 Tomcat 插件 ...

    myeclipse和eclipse的web项目导入

    接下来,我们需要编辑项目的设置文件 org.eclipse.wst.common.project.facet.core.xml,以便将 jst.web 的版本更改为 2.5。这个文件位于项目的根目录下的.settings 文件夹中。 Eclipse 中 Web 项目的配置 在 ...

    NX二次开发UF-FACET-ask-vertices-of-facet 函数介绍

    NX二次开发UF_FACET_ask_vertices_of_facet 函数介绍,Ufun提供了一系列丰富的 API 函数,可以帮助用户实现自动化、定制化和扩展 NX 软件的功能。无论您是从事机械设计、制造、模具设计、逆向工程、CAE 分析等领域的...

    NX二次开发UF-FACET-ask-normals-of-facet 函数介绍

    NX二次开发UF_FACET_ask_normals_of_facet 函数介绍,Ufun提供了一系列丰富的 API 函数,可以帮助用户实现自动化、定制化和扩展 NX 软件的功能。无论您是从事机械设计、制造、模具设计、逆向工程、CAE 分析等领域的...

    NX二次开发UF-FACET-ask-params-of-facet 函数介绍

    NX二次开发UF_FACET_ask_params_of_facet 函数介绍,Ufun提供了一系列丰富的 API 函数,可以帮助用户实现自动化、定制化和扩展 NX 软件的功能。无论您是从事机械设计、制造、模具设计、逆向工程、CAE 分析等领域的...

    NX二次开发UF-FACET-ask-solid-face-of-facet 函数介绍

    NX二次开发UF_FACET_ask_solid_face_of_facet 函数介绍,Ufun提供了一系列丰富的 API 函数,可以帮助用户实现自动化、定制化和扩展 NX 软件的功能。无论您是从事机械设计、制造、模具设计、逆向工程、CAE 分析等领域...

    NX二次开发UF-FACET-ask-face-id-of-facet 函数介绍

    NX二次开发UF_FACET_ask_face_id_of_facet 函数介绍,Ufun提供了一系列丰富的 API 函数,可以帮助用户实现自动化、定制化和扩展 NX 软件的功能。无论您是从事机械设计、制造、模具设计、逆向工程、CAE 分析等领域的...

    idea部署eclipse的web项目(tomcat).pdf

    根据给定文件内容,本文将详细解释在IntelliJ IDEA中部署Eclipse Web项目到Tomcat服务器的具体步骤,包括项目导入、Web配置、Artifact配置以及启动运行等相关知识点。 首先,我们要明白IntelliJ IDEA与Eclipse是两...

    Eclipse java项目完美转换成web项目

    需要找到对应jst.web的version标签,并将其修改为与所使用的服务器版本相匹配的版本号(如2.5),之后保存文件。这样的修改是必要的,因为只有正确的版本设置才能保证项目能够成功地添加到特定的应用服务器,例如...

    org.eclipse.wst.common.project.facet.core.xml

    图书管理系统

    Effective JavaScript: 68 Specific Ways to Harness the Power of JavaScript[EPUB版]

    You’ll learn how to choose the right programming style for each project, manage unanticipated problems, and work more successfully with every facet of JavaScript programming from data structures to ...

    eclipse中java项目转成Web项目

    2. 确保选中“Dynamic Web Module”,并在版本选项中选择合适的版本,如“3.0”或更高。 3. 点击“Apply and Close”保存更改。 #### 步骤四:验证和调整 一旦项目性质和特性被正确设置,Eclipse将自动创建必要的...

    solrj的facet查询总结

    SolrJ 的 Facet 查询总结 Facet 查询是 Solr 的高级搜索功能之一,可以给用户提供更友好的搜索体验。在搜索关键字的同时,能够按照 Facet 的字段进行分组并统计。下面是对 SolrJ 的 Facet 查询的总结: 一、Facet ...

    JavaVersionMismatch

    Java compiler level does not match the version of the installed Java project facet. Unknown Faceted Project Problem (Java Version Mismatch) 1、preferences &gt; java &gt; Installed JRES &gt; 选择java version ...

    lucene facet bobo-browse实现

    总结,Lucene结合Bobo-Browse提供了一套完整的Facet解决方案,使得开发者能够轻松地在搜索结果中加入分类和筛选功能,极大地提升了用户的检索体验。通过理解并熟练运用Bobo-Browse,我们可以构建出功能强大、性能...

    数据结构课程设计

    在数据结构课程设计中,表达式的加减运算和中缀、后缀表达式的处理是重要的实践环节,这涉及到计算机科学中的算法和数据结构基础知识。在这个项目中,我们将深入探讨这些概念,并了解如何通过编程实现它们。...

Global site tag (gtag.js) - Google Analytics