前面我們描述了如何使用maven搭建一個最基本的Java Project 框架。在實際生產應用中,一般不會僅僅建立一個最基本的Java Project項目,目前 Java Web 開發已經成為Java的主要應用之一,所以本節我們來講解一下如何使用Eclipse搭建Maven Web項目。
開發環境
- 開發平台:Eclipse Neon.2 Release (4.6.2)
- JDK版本:java version "1.8.0_121"
- maven版本:Eclipse Neon.2 Release(4.6.2)自帶maven工具,版本為3.3.9
Maven Web 環境搭建
首先打開eclipse開發工具,點擊File->New->Other...
點擊后進入new界面,如下所示:
在Wizards輸入框中輸入maven,在單選框中選擇Maven Project,點擊Next> :
根據自己的實際情況填寫工程存放路徑,也可選擇Default WorkSpace Location,填寫完成后點擊 Next >:
在CataLog類別中選擇All CataLogs,然后從下面的單選框中選擇 org.apache.maven.archetypes maven-archetype-webapp 1.0 選項,點擊 Next >:
在三維坐標位置分別填入group id, artifact id 和 version,然后點擊Finish。完成后Project Explorer 中會出現新建的mavenWebDemo項目:
從圖中可以看出maven所依賴的JRE System Library 是J2SE-1.5,並不是我們開發環境中所需要的1.8。右鍵JRE System Library,選擇Properties:
點擊后進入如下界面:
選擇Workespace default JRE,點擊OK,這樣就引用了本機配置的jre版本。
右鍵點擊項目,選擇Properties,進入如下界面,左側選擇框內點擊 Java Compiler
在右側的配置界面里面依舊顯示 Compiler compliance level 為1.5,選擇 1.8,點擊Apply,出現如下對話框:
點擊Yes,對話框消失,點擊OK。
右鍵點擊項目名稱,選擇Properties,進入項目屬性頁面,左側選擇Project Facts:
一般情況下,如果上圖中的Dynamic Web Module 為2.3,可能不是我們開發需要的版本,同樣的還有Java和JavaScript等等,但是當我們選擇自己需要的版本時,系統卻無法點擊 Apply 和 OK,例如我們將Dynamic Web Module修改為3.0:
此時,我們可以通過項目配置文件進行修改。從文件系統進入workspace 工作目錄下,進入本項目(mavenWebDemo)目錄下的.settings文件夾內,.settings是一個隱藏文件夾,在Windows環境下需要讀者設置顯示出來。下面主要修改該目錄下的三個配置文件內容:
org.eclipse.jdt.core.prefs
eclipse.preferences.version=1 org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve org.eclipse.jdt.core.compiler.compliance=1.8 org.eclipse.jdt.core.compiler.debug.lineNumber=generate org.eclipse.jdt.core.compiler.debug.localVariable=generate org.eclipse.jdt.core.compiler.debug.sourceFile=generate 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.8
如果配置文件中的數據為1.5,則修改為1.8。
org.eclipse.wst.common.component
<?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.8.0"> <wb-module deploy-name="mavenWebDemo"> <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="mavenWebDemo"/> <property name="java-output-path" value="/mavenWebDemo/target/classes"/> </wb-module> </project-modules>
如果配置文件中的project-version="1.5.0",則修改為1.8.0
org.eclipse.wst.common.project.facet.core.xml
<?xml version="1.0" encoding="UTF-8"?> <faceted-project> <fixed facet="wst.jsdt.web"/> <installed facet="jst.web" version="3.0"/> <installed facet="wst.jsdt.web" version="1.0"/> <installed facet="java" version="1.8"/> </faceted-project>
將<installed facet="jst.web" version="2.3"/>修改為3.0,將<installed facet="java" version="1.5"/>修改為1.8,同理如果要修改其他參數,配置文件中按照自己需求修改即可。修改完成后可千萬別忘記保存修改過后的文件,保存成功后重啟eclipse環境。然后右鍵項目名稱,選擇Properties,在左側選擇欄中選擇Project Facts,此時可以看到右側的配置已經是我們想要的配置啦:
進入項目屬性配置頁面(上圖頁面),左側框中選擇Java Build Path,然后在右側選擇欄中選擇 Order and Export:
發現右側信息框中有兩個❌,這可是不能容忍的,這是因為這兩個路徑下對應的文件夾不存在,可是當我們按照路徑去自己手動建立的時候系統卻告訴我們文件夾已經存在,不能重復建立同名文件夾。解決方案如下。在上面中間的界面中選擇Source進入如下界面:
將兩個標有❌的根路徑選擇上,然后點擊 Allow output folders for source folders 前面的✅,此時✅消失,然后再次點擊✅,對號又出現,然后點擊Apply,點擊OK,此時從項目結構中就已經有了這個兩個路徑文件夾啦:
下面還有最后一件事情要做,進入WEB-INF目錄下的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>
有時候系統在這個文件下報錯,這是因為我們使用的Dynamic Web Project 版本為3.0,而該配置文件是2.3版本對應的配置文件,修改其內容如下:
<?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 Web Project 建立成功啦,如果你建立的項目還有什么報錯的話,請上網查詢解決方案。