當我第一次搜索Maven的做用究竟是什麼的時候,一大堆專業詞彙衝到個人眼前,例如「項目對象建模」,「Maven和Ant」,「項目生命週期」,「項目依賴管理」。。等等等等等我看不懂的字眼。html
經過學習,我告訴你們maven有什麼做用。 java
前言: maven項目也是一個項目,相似於javaProject,javaWebProject,就是多了些功能,其餘也沒啥,因此你們接觸的時候不要懼怕!web
1 . 幫你下載jar包 spring
maven項目會有一個 pom.xml文件, 在這個文件裏面,只要你添加相應配置,他就會自動幫你下載相應jar包,不用你鋪天蓋地的處處搜索你須要的jar包了 apache
下面是示範配置文件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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>exam</groupId> <artifactId>exam_3</artifactId> <packaging>war</packaging> <version>0.0.1-SNAPSHOT</version> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>3.0.5.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>3.0.5.RELEASE</version> </dependency> </dependencies> </project>mvc
以上主要看的<dependencies>結點裏面的內容, maven
裏面每配置一個<dependency>, 學習
<groupId>org.springframework</groupId> 項目名 xml
<artifactId>spring-webmvc</artifactId> 項目模塊
<version>3.0.5.RELEASE</version> 項目版本
maven都會經過,項目名-項目模塊-項目版原本maven在互聯網上的代碼庫中下載相應jar包。
因此這就是maven的功能之一,幫你下載jar包
2 . 尋找依賴,幫你下載依賴
尋找jar包是第一基本功能,尋找依賴在這個是在這個基礎上的功能。
在maven的代碼庫中,每個jar包也有本身的 pom.xml文件,而這個文件裏面也會有<dependency>配置,什麼依賴範圍我就不細說了,我想表達的就是,只要你配置的jar包所依賴的其餘jar包都會被maven自動下載下來。
例如: 你配置了
<dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>2.6</version> </dependency>
你要maven幫你下載spring-core-2.6.jar包
而這個jar包裏面須要用到commons-logging.jar這個包,
這叫就依賴,spring-core-2.6.jar依賴於commons-logging.jar。
這就是maven第二個做用,幫你下載依賴包。
3 . 熱部署,熱編譯
意思就是,在你web項目已經運行的時候,修改代碼的能直接被web服務器所接受,就不須要你 重啓服務器了,或者從新部署代碼了,並且你能夠直接經過maven 打包war或者jar項目。
原文連接:http://www.th7.cn/Program/java/201503/407878.shtml