1. 程式人生 > >Maven系列學習(一)Maven基本知識

Maven系列學習(一)Maven基本知識

gen 文件 cli 系列 路徑 標準化 enc 模型 conf

Maven 簡介

1.Maven主要是基於Java平臺的項目構建,依賴管理和項目信息

2.Maven是優秀的構建工具,跨平臺,消除構建的重復,抽象了一個完整的構建生命周期模型,標準化構建過程

3.管理分布的項目信息,版本控制系統,輕松獲取項目文檔,測試報告,靜態分析報告,版本日誌報告等

4.極限編程(XP)的搭配是非常不錯的,比如持續集成(CI)

5.在Maven中,任何一個依賴、插件或者項目構建的輸出,都可以稱之為構件,構件存儲在倉庫,(倉庫就是存放依賴和插件的地方),任何的構件都有唯一的坐標,Maven根據這個坐標定義了構件在倉庫中的唯一存儲路徑,

Maven 安裝和配置(我使用的是Ubuntu)

1.去Maven的下載網頁:http://maven.apache.org/download.cgi,我下載的是apache-maven-3.5.0-bin.tar.gz

2.檢查Java的環境變量和版本:

[email protected]:~$ sudo echo $JAVA_HOME
[sudo] password for zyd: 
/etc/jvm/jdk1.8.0_111
[email protected]:~$ java -version
java version "1.8.0_111"
Java(TM) SE Runtime Environment (build 
1.8.0_111-b14) Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)

3.然後解壓:

[email protected]:~/Downloads$ sudo tar -xvzf apache-maven-3.5.0-bin.tar.gz /demo

4.配置環境

[email protected]:~$ sudo gedit /etc/profile

在最下面添加代碼

#maven
export MAVEN_HOME=/opt/apache-maven-3.5.0
export PATH
=${PATH}:${MAVEN_HOME}/bin

完成!

重啟生效或使用source /etc/profile代碼

參看版本

mvn -version

Apache Maven 3.5.0 (ff8f5e7444045639af65f6095c62210b5713f426; 2017-04-04T03:39:06+08:00)
Maven home: /opt/apache-maven-3.5.0
Java version: 1.8.0_111, vendor: Oracle Corporation
Java home: /etc/jvm/jdk1.8.0_111/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "4.10.0-21-generic", arch: "amd64", family: "unix"

Maven目錄的分析

技術分享

bin:該目錄包含了mvn運行的腳本,這些腳本用來配置Java命令,還包含了m2.conf文件,這是classworlds的配置文件

boot:就包含了一個文件,以這次的下載的版本,該文件是plexus-classworlds-2.5.2.jar,是一個類加載器框架

conf:這個目錄用到的非常重要的文件setting.xml,直接修改該文件,就能在機器上全局地制定了Maven的行為

lib:該目錄包含了所有Maven運行時需要的Java類庫,Maven是分模塊開發的,可以說lib目錄就是真正的目錄

最後一條簡單的命令:

mvn help:system

該命令會打印出所有的java系統配置和環境變量,這些信息對我們日常的編程很有幫助,即會執行一條命令,會下載maven-help-plugin,包括pom文件和jar文件,然後放入本地倉庫

,默認的本地倉庫是在/home/{your name}/.m2文件,所有的Maven構件都被存儲到倉庫中,該文件夾裏包含一個倉庫:repository

Maven 插件

對於Maven,可以結合IDE使用,比如eclipse,Netbeans,IDEA,在此不做詳解

Maven配置用戶範圍setings.xml

Maven用戶可以選擇配置M2_HOME/conf/settings.xml或者~/.m2/settings.xml,前者是全局範圍,對整臺電腦有效,而後者是用戶範圍的,推薦使用用戶範圍的,

Maven目錄結構

http://www.cnblogs.com/kirohuji/p/6953536.html

Maven系列學習(一)Maven基本知識