Eclipse 通过 Maven 建立 SSM 框架项目(web项目)时,默认的web.xml
文件版本为 2.3,jre版本为 1.5;在修改其版本遇到了各种问题
例如:
- 1
- 2
- 3
- 4
- 5
- 1
- 2
- 3
- 4
- 5
查找方法时,配置顺序的错误,也是引发问题的原因。修改 jre和web.xml 版本,要处理好各版本之间的关系,比如 web3.0 的需要 Java 1.6 以上,JavaServer Faces 需要 web 版本 2.5 以上等等;了解规则,就可以很好的解决问题。
下面是总结的一个方法,有创建的整个流程。
另外:一种可行的方法是通过修改项目目录下
.settings/org.eclipse.wst.common.project.facet.core.xml
文件中 web 和 java 版本的方法。下面的方法不需要修改这个文件,更加简便。
Eclipse版本:Neon.1a Release (4.6.1)
1.新建一个Maven Project
选择Maven Project
选择maven-archetype-webapp
Group Id
是项目组织唯一的标识符,实际对应 Java 的包的结构,是 main 目录里 java 的目录结构。
Artifact Id
就是项目的唯一的标识符,实际对应项目的名称,就是项目根目录的名称。
新建的Maven项目结构为:
注意红框的结构,只有一个 src/main/resources,而且项目报下面的 HttpServlet 错误
项目右击 Properties
选择Java Build Path
选择 Add Library
添加 Server Runtime
选择 Apache Tomcat7
服务器(Tomcat8 需要 web版本3.1)
HttpServlet 错误解决,项目结构也有变化,自动补全src/main/java
和src/test/java
目录
此刻 maven 项目的 web.xml 版本为2.3,jre 版本为1.5,需要升级。
2.修改项目 jre版本和 web.xml 版本
网上的版本多而杂,自己实践才是关键
2.1修改 jre 版本
修改 jre 版本,不能再Java Bulid Path
中修改,一旦项目 update project
又会回到 1.5 的版本,可以在pom.xml 文件中声明
pom.xml
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
项目右击选择Maven Update Project
项目的Java Build Path
为:
之后你可以 Edit 把 jre 指定到Workspace default JRE
2.2修改web.xml
文件版本
这是默认生成的web.xml
,可以看到是2.3版本的。
web.xml
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 1
- 2
- 3
- 4
- 5
- 6
- 7
项目右击Properties
选择Project Facets
(项目模板),如下图,可以看到Dynamic Web Module
版本为 2.3
直接更改为3.0?,但是并不能更改
这里可以先把Dynamic Web Module
勾选去掉,之后Apply。
再接着勾选Dynamic Web Module
,注意下方出现Further configuration available...
选项;接着更改为想要的版本 3.0,点击Further configuration available...
之后,修改 Content director
为src/main/webapp
,勾选Generate web.xml deployment descriptor
OK,保存退出Project Facets
之后修改src/main/webapp/WEB-INF/web.xml
文件,头信息版本修改为 3.0 版本的。
web.xml
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
之后,项目右击选择Maven Update Project
。
项目结构为: