Maven Web 應用
Maven Web 應用
本章節我們將學習如何使用版本控制系統 Maven 來管理一個基於 web 的專案,如何建立、構建、部署已經執行一個 web 應用。
建立 Web 應用
我們可以使用 maven-archetype-webapp 外掛來建立一個簡單的 Java web 應用。
開啟命令控制檯,進入到 C:\MVN 資料夾,然後執行以下的 mvn 命令:
C:\MVN>mvn archetype:generate -DgroupId=com.companyname.automobile -DartifactId=trucks -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false
執行完後 Maven 將開始處理,並且建立完整的於Java Web 專案的目錄結構。
[INFO] Scanning for projects...[INFO] Searching repository for plugin with prefix: 'archetype'.[INFO] -------------------------------------------------------------------[INFO] Building Maven Default Project[INFO] task-segment: [archetype:generate] (aggregator-style)[INFO] -------------------------------------------------------------------[INFO] Preparing archetype:generate[INFO] No goals needed for project - skipping[INFO] [archetype:generate {execution: default-cli}][INFO] Generating project in Batch mode[INFO] --------------------------------------------------------------------[INFO] Using following parameters for creating project from Old (1.x) Archetype: maven-archetype-webapp:1.0[INFO] --------------------------------------------------------------------[INFO] Parameter: groupId, Value: com.companyname.automobile[INFO] Parameter: packageName, Value: com.companyname.automobile[INFO] Parameter: package, Value: com.companyname.automobile[INFO] Parameter: artifactId, Value: trucks[INFO] Parameter: basedir, Value: C:\MVN[INFO] Parameter: version, Value: 1.0-SNAPSHOT[INFO] project created from Old (1.x) Archetype in dir: C:\MVN\trucks[INFO] -------------------------------------------------------------------[INFO] BUILD SUCCESSFUL[INFO] -------------------------------------------------------------------[INFO] Total time: 16 seconds[INFO] Finished at: Tue Jul 17 11:00:00 IST 2012[INFO] Final Memory: 20M/89M[INFO] -------------------------------------------------------------------
執行完後,我們可以在 C:/MVN 資料夾下看到 trucks 專案,檢視專案的目錄結構:
Maven 目錄結構是標準的,各個目錄作用如下表所示:
資料夾結構 | 描述 |
---|---|
trucks | 包含 src 資料夾和 pom.xml 檔案。 |
src/main/webapp | 包含 index.jsp 檔案和 WEB-INF 資料夾. |
src/main/webapp/WEB-INF | 包含 web.xml 檔案 |
src/main/resources | 包含圖片、properties資原始檔。 |
pom.xml 檔案程式碼如下:
<
project
xmlns
=
"
"
xmlns:xsi
=
"
"
xsi:schemaLocation
=
"
"
>
<
modelVersion
>
4.0.0
</
modelVersion
>
<
groupId
>
com.companyname.automobile
</
groupId
>
<
artifactId
>
trucks
</
artifactId
>
<
packaging
>
war
</
packaging
>
<
version
>
1.0-SNAPSHOT
</
version
>
<
name
>
trucks Maven Webapp
</
name
>
<
url
>
</
url
>
<
dependencies
>
<
dependency
>
<
groupId
>
junit
</
groupId
>
<
artifactId
>
junit
</
artifactId
>
<
version
>
3.8.1
</
version
>
<
scope
>
test
</
scope
>
</
dependency
>
</
dependencies
>
<
build
>
<
finalName
>
trucks
</
finalName
>
</
build
>
</
project
>
接下來我們開啟 C:\ > MVN > trucks > src > main > webapp > 資料夾,可以看到一個已經建立好的 index.jsp 檔案,程式碼如下:
<
html
>
<
body
>
<
h2
>
Hello World!
</
h2
>
</
body
>
</
html
>
構建 Web 應用
開啟命令控制檯,進入 C:\MVN\trucks 目錄,然後執行下面的以下 mvn 命令:
C:\MVN\trucks>mvn clean package
Maven 將開始構建專案:
[INFO] Scanning for projects...[INFO] -------------------------------------------------------------------[INFO] Building trucks Maven Webapp[INFO] task-segment: [clean, package][INFO] -------------------------------------------------------------------[INFO] [clean:clean {execution: default-clean}][INFO] [resources:resources {execution: default-resources}][WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources,i.e. build is platform dependent![INFO] Copying 0 resource[INFO] [compiler:compile {execution: default-compile}][INFO] No sources to compile[INFO] [resources:testResources {execution: default-testResources}][WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources,i.e. build is platform dependent![INFO] skip non existing resourceDirectory C:\MVN\trucks\src\test\resources[INFO] [compiler:testCompile {execution: default-testCompile}][INFO] No sources to compile[INFO] [surefire:test {execution: default-test}][INFO] No tests to run.[INFO] [war:war {execution: default-war}][INFO] Packaging webapp[INFO] Assembling webapp[trucks] in [C:\MVN\trucks\target\trucks][INFO] Processing war project[INFO] Copying webapp resources[C:\MVN\trucks\src\main\webapp][INFO] Webapp assembled in[77 msecs][INFO] Building war: C:\MVN\trucks\target\trucks.war[INFO] -------------------------------------------------------------------[INFO] BUILD SUCCESSFUL[INFO] -------------------------------------------------------------------[INFO] Total time: 3 seconds[INFO] Finished at: Tue Jul 17 11:22:45 IST 2012[INFO] Final Memory: 11M/85M[INFO] -------------------------------------------------------------------
部署 Web 應用
開啟 C:\ < MVN < trucks < target < 資料夾,找到 trucks.war 檔案,並複製到你的 web 伺服器的 web 應用目錄,然後重啟 web 伺服器。
測試 Web 應用
訪問以下 URL 執行 web 應用:
驗證結果:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70006413/viewspace-2908906/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Maven建立Web應用程式專案MavenWeb
- 【譯】用maven使java web應用執行在內嵌的Jetty或TomMavenJavaWebJetty
- Web應用Web
- Web小應用Web
- Web應用程式Web
- 使用Maven打包你的應用——maven-jar-plugin & maven-assembly-plugin & maven-shade-pluginMavenJARPlugin
- 超詳細Maven技術應用指南Maven
- web離線應用Web
- 開發Web應用Web
- maven工程轉web工程MavenWeb
- maven 建立web專案MavenWeb
- 用Spring Web Flow和Terracotta搭建Web應用SpringWeb
- Native APP(原生應用)、Web App(Web應用)、Hybrid App(混合應用) 優缺點分析APPWeb
- [譯] 響應式 Web 應用(四)Web
- [譯] 響應式 Web 應用(五)Web
- [譯] 響應式 Web 應用(三)Web
- [譯] 響應式 Web 應用(二)Web
- [譯] 響應式 Web 應用(一)Web
- Go 編寫 Web 應用GoWeb
- Web應用程式優化Web優化
- angularJS web應用SEOAngularJSWeb
- Web應用程式框架-CatharsisWeb框架
- 智慧Web應用例項Web
- Maven--搭建Web專案MavenWeb
- Maven Web專案構建MavenWeb
- Web開發者必備:Web應用檢查清單Web
- Google Web應用開發指南第一章:什麼是Web應用?GoWeb
- 01.DRF-Web應用模式Web模式
- Web應用安全防護-WAFWeb
- web應用與http協議WebHTTP協議
- 構建單頁Web應用Web
- 使用JMeter測試Web應用JMeterWeb
- maven專案增加web.xmlMavenWebXML
- 如何用Maven建立web專案MavenWeb
- 騰訊雲Web應用防火牆有什麼用?Web應用防火牆是防禦原理介紹Web防火牆
- 用HBuilder把web應用套殼成appUIWebAPP
- 學用Java Web Start 部署應用程式 (轉)JavaWeb
- 用JavaServer Faces開發Web應用(4) (轉)JavaServerWeb