Eclipse創建Maven-Web項目及解決 jre版本和web.xml版本問題


Eclipse 通過 Maven 建立 SSM 框架項目(web項目)時,默認的web.xml文件版本為 2.3,jre版本為 1.5;在修改其版本遇到了各種問題 
例如:

web.xml is missing and <failOnMissingWebXml> is set to true JavaServer Faces 2.2 can not be installed : One or more constraints have not been satisfied. JavaServer Faces 2.2 requires Dynamic Web Module 2.5 or newer 等問題

查找方法時,配置順序的錯誤,也是引發問題的原因。修改 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/javasrc/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

...
      <build> <finalName>TestMaven3</finalName> <plugins> <!-- 修改maven默認的JRE編譯版本,1.8代表JRE編譯的版本,根據自己的安裝版本選擇1.7或1.8 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build> </project>

項目右擊選擇Maven Update Project項目的Java Build Path為:

這里寫圖片描述

之后你可以 Edit 把 jre 指定到Workspace default JRE

這里寫圖片描述

2.2修改web.xml文件版本

這是默認生成的web.xml,可以看到是2.3版本的。

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>

項目右擊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 directorsrc/main/webapp,勾選Generate web.xml deployment descriptorOK,保存退出Project Facets

這里寫圖片描述

之后修改src/main/webapp/WEB-INF/web.xml文件,頭信息版本修改為 3.0 版本的。

web.xml

<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> </web-app>

之后,項目右擊選擇Maven Update Project

項目結構為:

這里寫圖片描述

 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM