|
Maven是一個基于項目對象模型(POM)的概念的純java開發(fā)的開源的項目管理工具。主要用來管理java項目,進行依賴管理(jar包管理,能自動分析項目所需的依賴軟件包,并到Maven倉庫區(qū)下載)和項目構(gòu)建(項目打包和部署)。此外還能分塊開發(fā),提高開發(fā)效率。 本文將從以下三個方面寫起: 1、Maven的作用 2、Maven的安裝配置 3、IDEA配置Maven 1、Maven的作用,為什么要使用Maven (1)創(chuàng)建項目,自動關(guān)聯(lián)和下載依賴的jar包。 (2)升級框架的版本。升級某個框架的版本,但卻不知道與它相關(guān)聯(lián)的哪幾個jar也需要跟著升級,和升級到哪個版本。 (3)自動部署。用Maven只需一個命令,就可以把項目自動部署到遠程服務(wù)器上。 (4)項目編譯打包導(dǎo)出。這個隨意一個IDE都能做到,所以如果要Maven做這件事,可能的場景,就是做沒有裝IDE的環(huán)境里,比如在服務(wù)器端Linux環(huán)境下。 2、Maven的安裝配置 1、下載maven 的地址:http://maven./download.cgi 2、解壓,然后再“我的電腦”--右鍵--“屬性”--“高級系統(tǒng)設(shè)置”--“環(huán)境變量”中添加如下信息: a、新增變量MAVEN_HOME的值為Maven的安裝文件夾 b、在PATH變量中添加:%MAVEN_HOME%\bin 3、驗證配置是否成功,打開cmd,輸入:mvn -version Maven配置文件(settings.xml)具體說明 1.localRepository:設(shè)置本地倉庫: <localRepository>C:\software\repository</localRepository> 2.pluginGroups:插件組合 3.proxies:代理 4.servers服務(wù)器(其中username和password是私服的用戶名和密碼,后續(xù)配置私服說明) <server> <id>user-releases</id> <username>admin</username> <password>123456</password> </server> <server> <id>user-snapshots</id> <username>admin</username> <password>wangwujuan</password> </server> 5.mirrors:鏡像路徑 <!-- 阿里鏡像 --> <mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <mirrorOf>central</mirrorOf> </mirror> 6.profiles:服務(wù)器配置 <!--服務(wù)器的配置--> <profile> <id>nexusProfile</id> <repositories> <repository> <id>nexus</id> <name>nexus</name> <url>http://localhost:8081/nexus/content/groups/public/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> </repositories> <pluginRepositories> <!-- 插件倉庫,maven的運行依賴插件,也需要從私服下載插件 --> <pluginRepository> <!-- 插件倉庫的id不允許重復(fù),如果重復(fù)后邊配置會覆蓋前邊 --> <id>public</id> <name>Public Repositories</name> <url>http://localhost:8081/nexus/content/groups/public/</url> </pluginRepository> </pluginRepositories> </profile> <!-- java編譯插件,配jdk的編譯版本--> <profile> <id>jdk-1.8</id> <activation> <activeByDefault>true</activeByDefault> <jdk>1.8</jdk> </activation> <properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion> </properties> </profile> 7.activeProfiles:激活私服 <activeProfiles> <activeProfile>nexusProfile</activeProfile> </activeProfiles> Maven倉庫說明 存儲jar的倉庫(3種倉庫) 1.本地倉庫:存儲在本地磁盤,默認(rèn)在系統(tǒng)盤c盤 用戶名/.m2/xx 通過settings.xml 更改本地倉庫localRepository 2.遠程倉庫:一般都使用國內(nèi)鏡像或者公司自己搭建私服. 一般用Nexus 目的:加快下載速度 3.Maven(中央)倉庫:Maven團隊維護的jar包倉庫 http://repo1./maven2/ 一般用這個查POM:http:/// 檢索順序:先檢索本地倉庫--再檢索遠程倉庫--最后檢索中央倉庫 Maven管理項目周期 1. Clean:項目構(gòu)建前的清理操作 2. Default: 核心生命周期核心過程:編譯,運行,打包等等 3. Site:發(fā)布站點,生成報告等等, 3、IDEA配置Maven IDEA內(nèi)部集成了Maven,也可以配置成自己安裝的Maven File ----> Settings ----> 找到Maven,配置Maven home directory 創(chuàng)建Maven項目 File ----> New ----> Project ----> Maven 勾選Create from archetype 選擇maven-archetype-webapp 點擊Next 輸入GroupId、ArtifactId點擊Next 選擇Maven的版本 輸入項目名稱和目錄,點擊Finish 創(chuàng)建項目后,點擊Import Changes按鈕,會下載需要的jar包和插件 Maven項目說明 src/main/java:存放項目的.java文件 src/main/resources:存放項目資源文件。如何Spring,Hibernate配置文件 src/test/java:存放所有測試的.java文件.如Junit測試類 pom.xml(maven項目核心配置文件) pom.xml默認(rèn)內(nèi)容介紹: <!-- maven中model的版本號 --> <modelVersion>4.0.0</modelVersion> <!-- 公司名稱或組織名稱或者個人名稱 --> <groupId>com.sky</groupId> <!--項目名稱 --> <artifactId>FirstMaven</artifactId> <!-- 版本號 --> <version>1.0</version> <!-- 打包方式 :項目類型 POM:MAVEN項目,常用在繼承和聚合上 JAR:JAVASE項目,沒有網(wǎng)頁,跟服務(wù)器沒關(guān)系 WAR:JAVAEE項目,跟服務(wù)器沒關(guān)系--> <packaging>war</packaging> Maven工程添加依賴 推薦網(wǎng)站:http:/// 示例: <dependencies> <!-- https:///artifact/org.hibernate/hibernate-core --> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-core</artifactId> <version>5.2.10.Final</version> </dependency> </dependencies> 添加到項目的pom文件內(nèi)容說明(切換pom.xml到Dependencies目錄下): type:類型 取值說明: jar:jar包 Scope:聲明jar包的存活時間 取值說明: 1、provided:編譯和測試時需要 2、compile:編譯、測試、運行、打包需要 3、runtime:測試、運行、打包需要 4、test:測試 5、system:編譯和測試時需要,顯示引用,Maven不會檢索 |
|
|