Maven 使用(一)

以前也只是用过最基本的东西  现在重新比较系统的学习整理一遍

一 :为什么使用Maven

  1.Maven更好的管理各个模块的依赖关系。

    2.Maven制定了一个统一的项目层次结构规范。

    3.Maven统一管理jar包方便


二.Maven是什么

1.Maven是一个基于项目(Project)对象(Object) 模型(Model)的自动化构建工具。

由java编写,仅适用于java平台。

2.什么是"构建"

是指在软件开发过程中,一个工程的编译,部署,搭建等环节的全过程。

最终在服务器运行的是编译后的结果。

构建中的各个环节:

1.清理(clean)

2.编译(bulid)

3.测试 (test)

4.报告 (report)

5.打包 (package)

6.安装 (install)

7.部署 (deploy)


三.Maven的下载,安装,验证

1.下载地址:http://maven.apache.org/download.cgi

2.解压核心包,得到如下目录结构

3.Maven安装包目录结构简介

bin:Maven的一些开发可执行脚本

boot:Maven的一个类加载器的框架,相当于Maven自己的类库

conf:Maven的配置信息文件夹,包含一个重要的配置文件:settings.xml

lib:Maven运行时所依赖自身和第三方的jar包

LICENSE:Maven的软件许可证

NOTICE:Maven包含第三方软件的声明

README:这个不用解释了把(滑稽脸)

4.配置Maven的环境变量

没什么好说的,首先你要配置了JAVA_HOME 这个环境变量 (也就是要先装JDK)

然后配置两个环境变量:

M2_HOME(需要自己添加):就是Maven安装时的路径,即bin目录的上一级

Path:Maven安装时的路径的下一级, 即bin目录

然后在控制台验证一下是否安装成功:mvn -v

成功的话显示如下结果:

四.Maven的几个核心概念

1.目录结构   

2.仓库

3.坐标

4.依赖

5.生命周期/插件/目标

6.继承

7.聚合

8.POM.xml


①:一个简单的maven工程的目录结构:

②Maven的仓库

仓库:Maven存储所有项目共享的插件和依赖信息存放的位置。

分为两大类:

1>本地仓库

2>远程仓库

2.1>私服:Nexus 设在当前局域网上

2.2>中央仓库:

2.3>中央仓库的镜像:各大洲有设 提高效率

由于maven核心文件不包含 构建工程时用到的插件jar包,所以当执行maven构建命令时,如果本地仓库找不到,会联网进行下载。

本地仓库默认存放在C:\Users\Administrator\.m2\repository ,Administrator 是指当前windows系统登录的用户。我们可以更改本地仓库的位置:

1.找到maven 核心安装包的路径,打开conf下的settings.xml,

(例如我自己是:E:\apache-maven-3.0.5\conf\settings.xml)

2.找到节点<localRepository>,将他从注释中剪切到外面,更改他的值与你本地仓库路径一致即可  以后前用户的Maven本地仓库就在这里,从远程仓库下载插件时都会放到这里。

③常用Maven命令:

mvn clean:清理,相当于把之前编译好的文件删除

mvn compile:编译主程序,会生成target目录,用来存放编译好的文件

mvn test-compile:编译测试程序

mvn test:执行测试

mvn package:打包

mvn install:安装当前工程的输出文件到本地仓库

④Maven的坐标

一个坐标可以对应唯一一个工程,由三个基本节点组成:

groupId:公司或组织域名的倒写+项目名,也就是\src\main\java 下的路径(包名)。

artifactId:工程(模块)名称

version:工程的版本:分为RELEASE(稳定版) 和 SNAPSHOT(快照版),我们一般引用依赖时最好用稳定版

详细节点位置如下:

Maven的依赖

1> Maven解析依赖的信息时会到本地仓库中寻找被依赖的jar包

对于我们自己开发的Maven工程,使用mvn install 命令 安装 进入本地仓库。

2> 依赖的常用范围

    2.1>compile(默认):对主程序有效,对测试程序有效,参与打包,参与部署,贯穿构建过程。例(spring-core)

    2.2>test:仅对测试程序有效。例(junit 4)

    2.3>provided:仅开发时有效,不参与打包,不参与部署,因为服务器上自带有该范围的依赖。例(servlet-api)


⑥Maven的生命周期

maven生命周期仅定义了一个接口,由插件具体实现。它有三套相对独立的生命周期,各个阶段有顺序,有依赖关系:

1>Clean Lifecycle:在进行真正的构建之前进行一些清理工作。

2>Default Lifecycle:构建的核心部分,编译,测试,打包,部署等等。

3>Site Lifecycle:生成项目报告,站点,发布站点。

五.在eclipse中使用maven

1>设置Maven插件

Installations:指定Maven核心文件的位置。


User Settings:指定settings.xml文件位置,用来找到本地仓库。

2>创建Maven版的java工程,web工程,执行Maven命令

2.1>java工程

File-->New-->Maven Project

输入G和A,打包方式选择jar,Finish


之后我们设置一下全局JDK的版本:

打开settings.xml 找到<profiles>标签下添加:

2.2>创建Maven版的Web工程

打包方式那里选择war即可,其他步骤参照java工程,创建好了我们还需要设置一下(因为缺少WEB-INFO 文件夹下的信息)

右键项目名--》Properties--》Maven--》Project Facets

去掉红框中的勾,点Apply,再勾选它

会出现左下角的信息

点击进去,设置成如下:

一路OK-->Apply-->OK 即可。最后的结果如下:

上面有个图,但是不知道为啥老是看不到。。。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 221,695评论 6 515
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 94,569评论 3 399
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 168,130评论 0 360
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,648评论 1 297
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,655评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 52,268评论 1 309
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,835评论 3 421
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,740评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,286评论 1 318
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,375评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,505评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 36,185评论 5 350
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,873评论 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,357评论 0 24
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,466评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,921评论 3 376
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,515评论 2 359

推荐阅读更多精彩内容