我正在使用maven在Eclipse中创建一个动态web应用程序。我添加了一些文件夹,如src/test/java和src/test/resources。我还更改了Java Build Path中的库,以获得JavaSE-1.7。到这里都没问题。
当我试图改变项目Facet动态Web模块时,出了问题。在同一个地方,我将Java更改为1.7。它仍然告诉我,不能将项目facet动态Web模块的版本更改为3.0。
我已经改变了所有我认为会影响改变的东西。
我正在使用maven在Eclipse中创建一个动态web应用程序。我添加了一些文件夹,如src/test/java和src/test/resources。我还更改了Java Build Path中的库,以获得JavaSE-1.7。到这里都没问题。
当我试图改变项目Facet动态Web模块时,出了问题。在同一个地方,我将Java更改为1.7。它仍然告诉我,不能将项目facet动态Web模块的版本更改为3.0。
我已经改变了所有我认为会影响改变的东西。
当前回答
这是pagurix的答案的一个变体,但使用的是日食火星。
将web.xml文件更改为web.bak
忽略错误,我们接下来将重新生成它。
进入项目属性->项目facet,将动态Web模块版本设置为您需要的版本。Eclipse现在允许您保存。
现在右键单击该项目。选择Java EE工具->生成部署描述符存根。
这将创建一个具有所需版本的新web.xml。
打开新的web.xml,将XML头和完整的web-app打开标记复制到原来的web.bak,删除新的web.xml,并将web.bak重命名为web.xml。
完成了。
其他回答
我有同样的问题,删除。settings文件夹解决了这个问题
我有同样的问题,我甚至试图删除项目,并再次添加它。诀窍是删除.settings目录。
他们是解决这个问题的另一种方法(看看它,希望它能帮助你解决你的问题)
问题
不能将项目facet动态web模块2.3版本更改为3.0版本
解决方案
转到项目位置(例如:- d:/maven/todo) 进入。setting文件夹 检查这个文件:org.eclipse.wst.common.project 打开文件并更改“jst.”属性从2.3到3.0,并保存 右键单击项目刷新项目并更新maven 完成了! !
我更新了我的web.xml
<web-app 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_3_0.xsd"
version="3.0">
<display-name>Servlet 3.0 Web Application</display-name>
</web-app>
然后只需Maven ->更新项目…
当我试图将一个普通的Java项目转换为Maven项目时,我得到了这个错误。
我所做的是确定我的项目所需的Java编译器版本。对于我的项目,最低Java版本是1.8。
如果将版本降低到1.8以下,我的IDE将开始抱怨它无法识别大量导入的库,因此我将我的最低Java版本确定为1.8
1. Right click your project
2. Go to Properties
3. Left hand-side panel, click "Project Facets"
4. For Java, set the version according to your minimum version
现在,确保Java编译器版本使用与您在Project Facets中设置的相同的Java版本。
1. Right click your project
2. Go to Porperties
3. Left hand-side panel, click "Java Compiler"
4. Make sure Java Compiler version is the same.
5. If it is not the same, change the version. (Uncheck "Use compliance from execution environment' if needed to make the changes.
更改后,错误应该得到解决。如果错误仍然存在,右键单击项目-> Maven ->更新项目