Maven項(xiàng)目對象模型(POM)诉位,可以通過一小段描述信息來管理項(xiàng)目的構(gòu)建骑脱,報(bào)告和文檔的軟件項(xiàng)目管理工具,它的目的是通過采用各種模式來創(chuàng)建的一個(gè)具有可視性苍糠、復(fù)用性叁丧、可維護(hù)性和完整性等特征的開發(fā)模式,提高開發(fā)效率和產(chǎn)品質(zhì)量岳瞭。關(guān)于Maven的具體內(nèi)容拥娄,可以到Maven官網(wǎng)查看官方文檔,網(wǎng)上資料很多瞳筏,我也不重復(fù)造輪子了稚瘾,本文主要介紹如何在Eclipse中使用Maven。
運(yùn)行環(huán)境
- JAVA-1.8.0
- tomcat-8.6.8
- maven-3.3.9
- Eclipse IDE for Java EE
Eclipse集成Maven
首先需要安裝Maven插件姚炕,點(diǎn)擊菜單欄Help->Eclipse Marketplace摊欠,搜索"maven",找到"Maven Integration for Eclipse (Luna) 1.5.0"柱宦,點(diǎn)擊安裝些椒。
接著修改Maven路徑,點(diǎn)擊Window->Preferences掸刊,展開Maven->Installations免糕,添加Maven的路徑。
選擇你的Maven安裝路徑,點(diǎn)擊Finish并勾選該項(xiàng)说墨,OK完成骏全。
現(xiàn)在已經(jīng)將Maven集成到Eclipse中了,我們來創(chuàng)建一個(gè)基于Maven的網(wǎng)站尼斧。
右鍵點(diǎn)擊New->Other姜贡,搜索maven,選擇Maven Project然后點(diǎn)兩次Next棺棵,找到Artifact Id為maven-archetype-webapp的項(xiàng)楼咳,接著填寫pom.xml相關(guān)內(nèi)容,完成烛恤。
稍等片刻后可以看到項(xiàng)目結(jié)構(gòu)如下圖所示:
這不是一個(gè)標(biāo)準(zhǔn)的Maven Web項(xiàng)目結(jié)構(gòu)母怜,我們要添加兩個(gè)源文件夾,名稱分別為"src/main/resources"和"src/test/resources"缚柏。接著在項(xiàng)目上右擊選擇Properties來對項(xiàng)目進(jìn)行一些配置苹熏。
首先選擇Project Facets,點(diǎn)擊Convert to faceted fro币喧,勾選Dynamic Web Module轨域,版本改為2.3,OK完成杀餐。
再打開Properties面板干发,選擇Deployment Assembly,刪除帶有test的條目史翘,添加Maven的jar包到WEB-INF/lib下枉长。
最終效果如圖所示:
在pom.xml中配置所需的jar包,默認(rèn)已有單元測試包junit琼讽,可以在http://search.maven.org上搜索相應(yīng)的依賴包必峰,這里先添加兩個(gè)基本的JavaWeb依賴包"javax.servlet"(servlet依賴包)、"jstl-impl"(JSP標(biāo)簽庫)跨琳,再將packaging類型改為war自点,添加build->finalName和build->plugins結(jié)點(diǎn)桐罕,修改后的pom.xml文件如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.zkh</groupId>
<artifactId>maven_web</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>maven_web</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.glassfish.web</groupId>
<artifactId>jstl-impl</artifactId>
<version>1.2</version>
</dependency>
</dependencies>
<build>
<finalName>maven_web</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.1.1</version>
<configuration>
<webResources>
<resource>
<directory>WebContent</directory>
</resource>
</webResources>
</configuration>
</plugin>
</plugins>
</build>
</project>
這樣一個(gè)基于Maven的WEB項(xiàng)目基本框架就建成了脉让,其它操作和傳統(tǒng)開發(fā)模式一樣,將源代碼放在"src/main/java"功炮、"src/test/java"下溅潜,相應(yīng)的配置文件放在src/*/resources下,前端內(nèi)容放在WEB-INF下薪伏,最終項(xiàng)目結(jié)構(gòu)類似下圖(采用SSM整合框架):
本文為作者kMacro原創(chuàng)滚澜,轉(zhuǎn)載請注明來源:http://www.reibang.com/p/1ed4b8982515。