深入理解Maven環(huán)境搭建和介紹
Maven是一個(gè)項(xiàng)目管理的Java 工具,在JavaEE中,我們可以使用Maven方便地管理團(tuán)隊(duì)合作的項(xiàng)目,現(xiàn)在我們?cè)趯W(xué)習(xí)JavaEE框架,使用Maven可以管理類庫(kù),有效方便地供團(tuán)隊(duì)中的其他人員使用。
最近項(xiàng)目弄完了,有好多時(shí)間,準(zhǔn)備把以前的知識(shí)復(fù)習(xí)一遍,以便日后更好的使用,先從maven搭建開始,然后再搭建以下SSH+mybatis的框架,弄完了在學(xué)學(xué)Hadoop分布式相關(guān)的東西。
安裝前先配置好電腦的相關(guān)環(huán)境變量。
一、配置maven的環(huán)境
下載地址:http://maven.apache.org/download.cgi(window下載(Binary zip)的)
將maven解壓,然后配置環(huán)境變量打開: 計(jì)算機(jī)------系統(tǒng)屬性------高級(jí)系統(tǒng)設(shè)置------環(huán)境變量
系統(tǒng)變量新建 M2_HOME
變量值E:\apache-maven-3.2.5(maven解壓位置)
path中添加
;%M2_HOME%\bin ----在path的后面先添加;號(hào)
啟動(dòng)cmd,輸入mvm -v可以查看版本

二、修改本地倉(cāng)庫(kù)位置
maven默認(rèn)的本地倉(cāng)庫(kù)位置,是在當(dāng)前用戶目錄下/.m2/repository中,我們可以配置到別的盤。

這兒配置到了E:/m2/repository下。
然后打開cmd,運(yùn)行一條簡(jiǎn)單的maven命令:mvn help:system 下載相關(guān)的maven信息。
三、配置Eclipse的maven插件
1、 打開Eclipse,選擇help----Install New Software------add
name : m2e
location : http://m2eclipse.sonatype.org/sites/m2e
下載好之后解壓:將里面的features和plugins文件夾下內(nèi)容復(fù)制到Eclipse對(duì)應(yīng)的features和plugins中,重啟即可。
2、配置用戶范圍setting.xml
%M2_HOME%/conf/setting.xml是全局的設(shè)置,這個(gè)電腦上所有的用戶都會(huì)受影響,所以將%M2_HOME%/conf/setting.xml復(fù)制一份,到上面配置倉(cāng)庫(kù)位置中如我的F:/m2文件夾下。
3、設(shè)置MAVEN_OPTS環(huán)境變量
當(dāng)項(xiàng)目過(guò)大時(shí),容易出現(xiàn)OutOfMemoryError異常,所以我們需要修改運(yùn)行內(nèi)容,有以下兩種方法:
1)在maven的bin/mvn.bat中加入set MAVEN_OPTS= -Xms125m -Xmx512m
2)在環(huán)境變量中添加 MAVEN_OPTS 變量值為-Xms125m -Xmx512m

4、配置Eclipse
在Window——Preferences——Maven
installations勾掉默認(rèn)的maven,add安裝的maven目錄

user Settings中選擇本地倉(cāng)庫(kù)配置的setting.xml,如我的E:\m2\settings.xml

點(diǎn)擊應(yīng)用。
四、創(chuàng)建Maven項(xiàng)目
在Eclipse中選擇新建Maven project,選擇工作環(huán)境
1、選擇要?jiǎng)?chuàng)建的filter如下:

2、填寫maven項(xiàng)目坐標(biāo)信息

我們可以看到已經(jīng)生成maven結(jié)構(gòu)的項(xiàng)目了。

五、Maven簡(jiǎn)單的介紹
下面是生成的maven的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>org.andy</groupId>
<artifactId>redis_demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>redis_demo</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>
</dependencies>
</project>
其標(biāo)簽的具體含義如下:
project:pom.xml文件中的頂層元素;
modelVersion:指明POM使用的對(duì)象模型的版本。這個(gè)值很少改動(dòng)。
groupId:指明創(chuàng)建項(xiàng)目的組織或者小組的唯一標(biāo)識(shí)。GroupId是項(xiàng)目的關(guān)鍵標(biāo)識(shí),典型的,此標(biāo)識(shí)以組織的完全限定名來(lái)定義。比如,org.apache.maven.plugins是所有 Maven插件項(xiàng)目指定的groupId。
artifactId:指明此項(xiàng)目產(chǎn)生的主要產(chǎn)品的基本名稱。項(xiàng)目的主要產(chǎn)品通常為一個(gè)JAR文件。第二,象源代碼包通常使用artifactId作為最后名稱的一部分。典型的產(chǎn)品名稱使用這個(gè)格式: <artifactId>- <version>. <extension>(比如:myapp-1.0.jar)。
version:項(xiàng)目產(chǎn)品的版本號(hào)。Maven幫助你管理版本,可以經(jīng)常看到SNAPSHOT這個(gè)版本,表明項(xiàng)目處于開發(fā)階段。
name:項(xiàng)目的顯示名稱,通常用于maven產(chǎn)生的文檔中。
url:指定項(xiàng)目站點(diǎn),通常用于maven產(chǎn)生的文檔中。
description:描述此項(xiàng)目,通常用于maven產(chǎn)生的文檔中。
properties:pom文件中的配置信息,可以配置全局變量
dependencies:依賴配置集,里面可以添加需要的jar的依賴信息
比如我們需要添加jedis的jar,可以從中央倉(cāng)庫(kù)搜http://mvnrepository.com/
添加對(duì)應(yīng)的依賴到dependencies標(biāo)簽就可以:
<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.6.2</version> </dependency>
六、maven的相關(guān)命令
mvn archetype:create :創(chuàng)建 Maven 項(xiàng)目
mvn compile :編譯源代碼(編譯到target文件夾中)
mvn test-compile :編譯測(cè)試代碼
mvn test : 運(yùn)行應(yīng)用程序中的單元測(cè)試
mvn site : 生成項(xiàng)目相關(guān)信息的網(wǎng)站
mvn clean :清除目標(biāo)目錄中的生成結(jié)果(把默認(rèn)target文件夾中的數(shù)據(jù)清理)
mvn package : 項(xiàng)目打包
mvn install :將打包好的包安裝到本地倉(cāng)庫(kù)中,以使其塔項(xiàng)目能夠調(diào)用
mvn eclipse:eclipse :生成 Eclipse 項(xiàng)目文件
mvn -Dmaven.test.skip=true : 忽略測(cè)試文檔編譯
cargo:deploy :部署到私有服務(wù)器上
當(dāng)然這些命令可以一起使用比如下
打jar包并且安裝到別的應(yīng)用 clean compile package install (清理,編譯,打包,安裝jar)
打war包并部署 clean compile package cargo:deploy(清理,編譯,打包,安裝war)
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Java中數(shù)組的創(chuàng)建與傳參方法(學(xué)習(xí)小結(jié))
這篇文章主要介紹了Java中數(shù)組的創(chuàng)建與傳參方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-09-09
SpringBoot URL帶有特殊字符([]/{}等),報(bào)400錯(cuò)誤的解決
這篇文章主要介紹了SpringBoot URL帶有特殊字符([]/{}等),報(bào)400錯(cuò)誤的解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-02-02
Java中StringBuilder字符串類型的操作方法及API整理
Java中的StringBuffer類繼承于AbstractStringBuilder,用來(lái)創(chuàng)建非線程安全的字符串類型對(duì)象,下面即是對(duì)Java中StringBuilder字符串類型的操作方法及API整理2016-05-05
GsonFormat快速生成JSon實(shí)體類的實(shí)現(xiàn)
GsonFormat主要用于使用Gson庫(kù)將JSONObject格式的String?解析成實(shí)體,本文主要介紹了GsonFormat快速生成JSon實(shí)體類的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下2023-05-05
深度優(yōu)先與廣度優(yōu)先Java實(shí)現(xiàn)代碼示例
這篇文章主要介紹了深度優(yōu)先與廣度優(yōu)先Java實(shí)現(xiàn)代碼示例,具有一定借鑒價(jià)值,需要的朋友可以參考下。2017-12-12
log4j.properties 配置(實(shí)例講解)
下面小編就為大家?guī)?lái)一篇log4j.properties 配置(實(shí)例講解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-08-08
idea mac版打開是出現(xiàn)打開失敗問(wèn)題及解決
這篇文章主要介紹了idea mac版打開是出現(xiàn)打開失敗問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-09-09
MyBatis?實(shí)現(xiàn)多對(duì)多中間表插入數(shù)據(jù)
這篇文章主要介紹了MyBatis?實(shí)現(xiàn)多對(duì)多中間表插入數(shù)據(jù),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-02-02

