我使用的是Eclipse EE Juno,而我当前的web应用程序使用的是Dynamic web modules 2.4
。我试图将版本提升到3.0,但由于某种原因我无法。当我试图在项目方面更改版本时,我得到了Cannot change version of project facet Dynamic Web Module to 3.0
。有没有可能是我的web.xml文件中有一些双层线决定了这一点?如果不是单独从Eclipse项目方面设置,我如何更改动态web模块版本?
web.xml
:中的Servlet 2.4
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
web.xml
:中的Servlet 3.0
<web-app version="3.0"
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">
这是唯一的区别。剩下的就是IDE配置。为了使用Servlet 3.0,您必须在CLASSPATH上有3.0 JAR,以便可以使用新的注释和其他类。但是不要在WAR中包含servlet JAR,实现应该来自servlet容器。