最近在开发javaweb项目中有用到maven,以前并不是很了解,于是学习了一些相关内容,记之共享。

本篇内容在Windows环境下实施,JDK版本使用的1.7.0_79。

一、maven是什么?

  简单来说,maven是一个项目构建工具。

  开发人员都有过这样的经历:在项目开发中,为了提高效率,不重复“造轮子”,经常会引用第三方的jar包。一般的做法是:上网搜索,下载jar包,配置到项目的依赖目录下,调用。若引用的jar包较少,这种方式倒也没什么;可如果项目中需要引入大量的jar包,且各依赖包之间可能存在版本冲突时,jar包的管理工作将变得特别繁琐。

  maven的存在就可以轻松解决这个问题。只需在IDE环境中配置好maven,然后新建maven项目,并通过在pom.xml文件中写入简单的配置,就能自动实现jar包的下载和管理。jar包的添加、删除以及版本管理都讲变得十分便捷!

  这是maven最常用的功能,至于其他功能,这里暂时不作深究。

二、maven的安装和配置

  1、安装JDK。maven是基于java语言开发的,因此在安装maven之前,必须确保计算机已经安装了JDK(maven可以运行在JDK1.4及以上版本中)。JDK的安装这里就不做介绍了,网上的教程非常多,傻瓜式安装,然后配置好环境变量即可。打开windows命令行,输入——“java -version”,若显示出java的版本信息,说明计算机已经成功配置好了JDK环境。

  2、下载maven。下载地址:http://maven.apache.org/download.html。其中列举了针对不同平台下的各种版本的maven安装文件。初识maven者建议选择apache-maven-版本号-bin.zip文件下载。若想了解maven源码,可以下载apache-maven-版本号-src.zip文件。

  3、安装maven。maven的安装十分简单,只需将下载的.zip后缀的压缩包解压到你想放置的目录即可。这里的安装以apache-maven-3.3.9-bin.zip文件为例:解压apache-maven-3.3.9-bin.zip,得到apache-maven-3.3.9的文件夹,这里将其放到D://softwares/路径下。安装后需要配置maven的环境变量。右键“我的电脑”,点击“属性”——“高级系统配置”——“环境变量”,在系统变量中点击“新建”:【变量名:M2_HOME;变量值:D://softwares/apache-maven-3.3.9】,点击确认。在系统变量中找到path,双击进行编辑,在变量值的末尾加上%M2_HOME%/bin(注意各值之间需要用“;”分隔)。确认保存退出。打开windows命令行,输入——“mvn -version”,若显示出maven的版本信息,说明计算机已成功配置好了maven环境。

三、在eclipse配置使用maven

  有些eclipse版本中默认集成了m2eclipse模块,即可以直接新建maven项目,如eclipse mars。若你的eclipse中没有新建Maven Project的选项,你可以选择在eclipse中安装m2eclipse模块,点击eclipse菜单栏中的“Help”——“Install New Software...”,然后输入【Name:m2e;Location:http://m2eclipse.sonatype.org/sites/m2e/】。按步骤安装即可。当然你也可以选择使用集成好了m2eclipse模块的其他版本的eclipse。

  安装了m2eclipse模块的eclipse中也会自动内嵌一个maven环境,但由于其版本较新,通常不太稳定,因此通常重新配置eclipse,使其指向我们上一步安装在本地的maven环境。点击eclipse菜单栏中的“Windows”——“Preferences”,点击弹窗中左侧栏中的“Maven”——“Installation”,默认情况下是Embedded Maven被选中。点击add按键,选择我们上一步安装的maven根目录M2_HOME,添加后,选中这一个外部的maven应用后退出。

四、创建Maven项目

  打开eclipse,在项目explorer中右键“New”——“Project”——“Maven”——“Maven Project”,点击Next,选择项目存放目录,再点击Next,在下拉框中选中Artifact Id为“maven-archetype-webapp”,点击Next,在Group Id中输入包名,如:com.vike,在Artifact Id中输入项目名,如:helloworld。最后点击finish。

  在创建的maven项目helloworld的目录结构中,可以看到一个pom.xml的文件(POM:Project Object Model),它是maven项目的核心,项目中需要管理的jar包配置就是写在该文件中。打开pom.xml,可以看到项目的一些基本信息,如刚才输入的包名前缀,项目名等。若需要添加jar包依赖,可以在<project>标签内添加<dependencies>标签,然后在该标签下添加各个jar的<dependency>标签。<dependency>标签的格式如下: 

<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.26</version>
</dependency>
<dependencies>

  这段配置中最重要的是groupId、artifactId、version三行,这三个元素定义了一个项目的基本坐标,在maven的世界里,任何的jar、war、pom都是基于这些信息进行区分的。项目中需要任何jar包的上述三个元素的信息,可以到http://mvnrepository.com/网站中进行搜索。

  有时项目中会同时使用很多个某一类的jar包,他们的版本号version相同,为了便于版本的管理,会在<project>标签中添加<properties>标签,定义常量,如<spring-version>1.2.3</spring-version>,这样后续的同版本号的jar包的<dependency>中<version>标签中的值就可以写成${spring-version}。

补充:

  由于maven项目下载以来的jar包,默认是从国外的maven仓库下载,由于一些原因,通常下载速度会很慢,为了提高速度,可以配置镜像,使用使用国内的阿里云提供的maven仓库来下载。

  找到maven安装路径M2_HOME/conf/settings.xml,在其中的mirrors标签中,添加如下代码:

<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>

  从maven仓库下载的jar包会被放置到:C:\Users\你的用户名\.m2\repository中。

maven学习推荐书籍:《Maven in action》

  

  

  

  

项目构建工具maven的使用方法的更多相关文章

  1. Java项目工程化之项目构建工具Maven

    欢迎查看Java开发之上帝之眼系列教程,如果您正在为Java后端庞大的体系所困扰,如果您正在为各种繁出不穷的技术和各种框架所迷茫,那么本系列文章将带您窥探Java庞大的体系.本系列教程希望您能站在上帝 ...

  2. 走进JavaWeb技术世界12:从手动编译打包到项目构建工具Maven

    小李的Build之路(上) 转自: 刘欣 码农翻身 2016-07-10 摘要:手工Build的烦恼要不是为了和女朋友留在一个城市,小李肯定去北上广奋斗去了.现在他只能留在这个2.5线城市,进入这家软 ...

  3. java项目构建工具Maven

    一.java-maven常用命令 mvn archetype:create 创建Maven项目 mvn compile 编译源代码 mvn deploy 发布项目 mvn test-compile 编 ...

  4. 项目构建工具Maven

  5. 取代 Maven?这款项目构建工具性能提升 300%

    在 GitHub 上闲逛的时候,发现了一个新的项目:maven-mvnd,持续霸占 GitHub trending 榜单好几天了. maven-mvnd,可以读作 Maven Daemon,译作 Ma ...

  6. 项目管理构建工具——Maven(高阶篇)

    项目管理构建工具--Maven(高阶篇) 我们在之前的文章中已经基本了解了Maven,但也仅仅只止步于了解 Maven作为我们项目管理构建的常用工具,具备许多功能,在这篇文章中我们来仔细介绍 分模块开 ...

  7. 前端项目构建工具---Grunt

    什么是Grunt? grunt是javascript项目构建工具,在grunt流行之前,前端项目的构建打包大多数使用ant.(ant具体使用 可以google),但ant对于前端而言,存在不友好,执行 ...

  8. 项目管理及自动构建工具Maven

    项目管理及自动构建工具Maven 一.Maven安装.目录结构.cmd命令1.下载安装apache-maven-3.2.3-bin.zip下载:http://maven.apache.org/down ...

  9. 着重基础之—构建工具—Maven的依赖管理

    着重基础之—构建工具—Maven的依赖管理 项目构建利器Maven给我们开发人员带来了极大的便利,从繁琐的jar包管理中脱身的程序员终于可以有时间再进入另一个坑了. 我今天要给大家分享的内容是我在实际 ...

随机推荐

  1. Excel 常用快捷键

    Excel 常用快捷键 1. 移动整列 使用Shift快捷键可以快速移动整列:选中该列,当鼠标变成十字箭头时,按住Shift键,然后将该列移动到想要的位置. 2 绝对引用 使用F4快捷键可以快速设置绝 ...

  2. UEFI下win10+Ubuntu双启动后完全纯净卸载Ubuntu,重建BCD

    以下内容操作具有风险,操作前请提前备份数据.建议由有丰富经验的人使用,需要掌握diskpart. 背景 使用ubuntu+win10 dual boot后,需要重置回纯净win10系统. BCD是Bo ...

  3. JVM内存模型以及堆分配参数

    程序计数器: 存放下一条要运行的指令:每个线程都必须用一个独立的程序计数器,用于记录下一条要运行的指令.程序计数器是一块线程私有的内存空间. JAVA虚拟机栈: 线程私有的内存空间,它保存方法的局部变 ...

  4. HDU 6201 transaction transaction transaction (树形DP)

    题意:给定一棵树,每个点有一个点权,每条边也是,找一条路径,问你 T-S-sum,T表示路径的终点的权值,S表示路径始点的权值,sum表示从S到T的边权和. 析:把这一条路径拆开来看,那么就是必然是从 ...

  5. Mac上phantomjs装了不能用的解决

    下了,装了.然后整这句命令: phantomjs --version 直接报错.. 查了半天的官方文档,居然连个毛线都么找到.终于...墨迹到了一个方法,就抱着试一试的心态在terminal里输入了这 ...

  6. ERROR: from PIL import Image ImportError: No module named PIL

    ERROR: from PIL import Image ImportError: No module named PIL 到 http://www.pythonware.com/products/p ...

  7. mybatis SqlMapConfig.xml

    一.SqlMapConfig.xml 1.属性properties 在入门时,以抽取出连接数据库的属性得到properties文件. a.可以通过resource和url来获得属性. b.proper ...

  8. 4、Semantic-UI之图标的使用

    4.1 图标的使用   在Semantic-UI中定义了很多的图标样式,这些图标样式可以通过官网查看名称(官网中名称首字母都是大写的,但是在实际使用中全部都是小写使用的): 实例:图标样式 定义基础图 ...

  9. UWP平台Taglib编译(2)

    此文已由作者郑博授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验 #endif  // _WIN32 } class FileStream::FileStreamPrivate ...

  10. 苹果软件App上架问题

    0.官方网站 开发者中心 itunes connect 优酷 哔哩哔哩 腾讯视频 1.上架流程 1.1 开发者账号申请 2017年苹果企业开发者账请完号申整指南 iOS开发之苹果开发者账号注册申请流程 ...