maven基礎
Maven基礎
maven核心內容:依賴管理、
Maven是Apache組織的開源專案,是專案構建工具。用來管理jar包之間的相互依賴關係
Maven是一個專案構建和管理的工具,提供了幫助管理,構建,文件,報告,依賴,釋出,分發的方法、可以方便的編譯程式碼,進行依賴管理、管理二進位制庫等
1. maven的好處
maven的好處在於可以將專案過程規範化,自動化,高效化以及強大的可擴充套件性
利用maven自身以及其外掛還可以獲得程式碼檢查報告,單元測試覆蓋率,實現持續整合等等
座標:作為jar包,如何給出座標
舉例:struts2-core-2.3.24.jar
Apache(公司)+struts2(專案名稱)+2.3.24(版本資訊)
maven專案中需要某一個jar包,只需要在maven專案中配置需要的jar包座標資訊。maven程式根據jar包座標資訊去jar包倉庫中查詢jar包
2. maven的好處如何實現
maven的兩大核心:
** 依賴管理:對jar包管理過程
** 專案構建:專案在編碼完成後,對專案進行編譯,打包,測試,部署等一系列操作通過命令來實現
使用maven命令將web專案釋出到tomcat
進入一個maven的web專案,執行命令mvn tomat:run
3. maven安裝、配置本地倉庫
maven程式安裝前提:maven程式是java開發,需要安裝jdk程式
mvn -v:檢視maven版本資訊
1) maven的下載安裝
<1>下載maven:
下載後解壓(解壓目錄路徑最好不要有中文)
<2>解壓後目錄:
bin:可執行的指令碼
lib:執行需要的依賴包
conf:配置檔案
boot:
<3>配置maven的環境變數
MAVEN_HOME:xxxxxxxxx
PATH:xxxxxxxxin;
JDK環境變數必須配置
JAVA_HOME:maven專案會搜尋改環境變數,否則無法執行
2) 配置本地倉庫
倉庫型別:本地倉庫–>私服–>中央倉庫
進入maven程式解壓後的目錄中
配置conf中的setting.xml檔案
<localRepository>jar包的路徑</localRepository>
4. maven專案標準目錄結構
src:專案原始碼目錄
main/java:專案原始碼
main/resources:專案配置檔案
main/webapp:js、css、jsp、web.xml等檔案
test/:測試目錄
target:
pom.xml:project object model maven專案核心配置檔案
5. maven的常用命令
1. clean:清理
mvn clean
就是刪除maven專案下的target目錄,編譯的class檔案等
2. compile:編譯
mvn compile
將專案中的.java檔案編譯為.class檔案
3. test:單元測試
mvn test
將專案根目錄下src/test/java目錄下的單元測試類都會執行
對單元測試類的類名有要求:必須以Test.java結尾
4. package:打包
mvn package
web project –war包
java project –jar包
將專案打包,打包專案到根目錄下target目錄
5. install:安裝
本地多個專案公用一個jar包
打包到本地倉庫
6. maven專案的生命週期
在maven中存在三套宣告週期,每一套宣告週期都是相互獨立的,互不影響。在一套宣告週期中,執行後面的命令,前面的操作都會自動執行
CleanLifeCycle:清理的生命週期(clean)
defaultLifeCycle:預設宣告週期(compile、test、package、install、deploy)
siteLifeCycle:站點宣告週期(site)
6. maven整合web專案案例
1. eclipse配置maven
構建索引:
右擊從新構建索引
2. 建立maven專案
maven project:建立maven專案或者父專案
maven module:建立maven子模組(子專案)
group id:公司名稱 com.major
artifact id:專案名稱 crm
Version:版本
Packaging:jar/pom/war 打包(pom父工程選擇pom)
Name:
Description:
pom.xml新增資訊
<!– 新增jdk版本資訊–>
1. <build> 2. <plugins> 3. <plugin> 4. <groupId>org.apache.maven.plugins</groupId> 5. <artifactId>maven-compiler-plugin</artifactId> 6. <configuration> 7. <source>1.7</source> 8. <target>1.7</target> 9. </
本文轉自zsdnr 51CTO部落格,原文連結:http://blog.51cto.com/12942149/1949717,如需轉載請自行聯絡原作者
相關文章
- Maven:基礎Maven
- Maven——基礎篇Maven
- Maven基礎配置Maven
- Maven入門基礎Maven
- Maven基礎:Maven環境搭建及基本使用(1)Maven
- maven安裝與基礎配置Maven
- maven基礎:依賴範圍Maven
- maven簡介及基礎使用Maven
- Java代審:Maven基礎知識JavaMaven
- Maven基礎瞭解及配置資訊Maven
- IDEA + maven 零基礎構建 java agent 專案IdeaMavenJava
- Maven 專案管理工具基礎入門系列(二)Maven專案管理
- 【FPGA基礎】Latch基礎FPGA
- Java基礎-語法基礎Java
- Pandas 基礎 (2) - Dataframe 基礎
- 前端基礎之jQuery基礎前端jQuery
- [今日白學]元件的基礎的基礎的基礎元件
- MyBatis基於Maven入門例項MyBatisMaven
- 基於Maven的Spring整合CXFMavenSpring
- 【web前端基礎 | JS基礎】物件Web前端JS物件
- scala基礎語法-----Spark基礎Spark
- Java基礎-物件導向基礎Java物件
- 【基礎篇索引】索引基礎(四)索引
- 【基礎篇索引】索引基礎(三)索引
- 【基礎篇索引】索引基礎(二)索引
- 【基礎篇索引】索引基礎(一)索引
- python基礎中的基礎Python
- 基礎
- JavaScript 基礎卷(一):基礎語法JavaScript
- 前端基礎入門四(JavaScript基礎)前端JavaScript
- 測試基礎(四)Jmeter基礎使用JMeter
- Python基礎:語法基礎(3)Python
- ASM常用基礎管理命令[ASM基礎]ASM
- 【Java基礎】--深入剖析基礎語法Java
- 【Vim】基礎之基礎——指尖的舞蹈
- 基礎表-底表-基礎資料
- Go 基礎教程--2-基礎知識Go
- Web測試基礎-Html基礎知識WebHTML