Maven学习专题--Maven入门及安装
因为项目需要,新项目需要使用Maven开发,但是组内大部分没有接触过maven。我就毅然承担搭建maven环境的任务了。因为一切重头开始,就想把自己的整个搭建环境、项目创建、框架整合和模块管理整个过程记录下来,以便后来人方便学习。
整个Maven准备分四篇博客来解析分别是:Maven环境搭建、Maven入门项目、Maven整合三大框架和Maven分模块开发。闲话少说,整干货!!
一、Maven简介
Maven是Apache团队开发的一个项目管理工具、纯Java编写。基于项目对象模型(POM)的概念,Maven提供了开发人员构建一个完整的生命周期框架。开发团队可以自动完成项目的基础工具建设,Maven使用标准的目录结构和默认构建生命周期。
小结:Maven是一个项目工具、可以跨平台、对项目提供了一个完整的生命周期。
二、为什么使用Maven
本着实用优先原则及我实际工作中遇到的问题提出如下问题:
是否有这么一个项目,老大把项目所需jar包上传git后组内每个人都需要去clone后都导入了每个人的项目工程中?
自己负责的service代码需要等到dao哥们写好后导出jar包然后拷贝导入?
针对第一问题:如果使用Maven后通过对其依赖管理,并不需要将jar每次都要导入,而是通过索引方式自动去仓库加载索引对相应的jar包
针对第二问题:直接让dao哥们将其代码编译成jar包上传到仓库,自己对依赖管理进行配置,自动从仓库索引
通过上面的描述我自己都有点蒙了,下图对所谓的依赖管理(实际就是jar包管理)做下说明:

结合上图,我们看到Maven有本地仓库、本地私服仓库、中央仓库三个仓库。其中当本机电脑安装了Maven后就会有本地仓库(下个环境搭建主题讲)、而公司私服上的仓库就是分模块开发时jar包上传下载的仓库,对于本地仓库、本地私服仓库均没有的第三方开源免费jar包则会到中央仓库查找。
小结:maven项目占用磁盘空间少(仅仅有源码,jar包在仓库)、大型项目协同开发时更加方便。
三、环境搭建
环境:JDK1.8,maven-3.3.9,window7
安装步骤:
1、到http://maven.apache.org/下载apache-maven-3.3.9-bin.zip
2、放到合适的目录解压并配置换变量
如下图:


3、验证:mvn -v

注:elipse中比较新一点的版本均已经集成了Maven故,如何在老版本中安装插件,不在赘述。
4、eclipse中maven插件配置修改
4.1:指定maven路径

4.2:修改maven本地仓库配置路径

4.3:eclipse指定本地仓库路径

至此maven第一篇就应该结束了,但是我个人感觉在为什么使用maven部分有很多没有讲清楚,写博客也许不仅仅是体力活吧,更是需要文笔能力。只希望有错误不妥之处请及时留言。
Maven学习专题--Maven入门及安装的更多相关文章
- Maven学习笔记-01-Maven入门
一 Maven的基本概念 Maven(翻译为"专家","内行")是跨平台的项目管理工具.主要服务于基于Java平台的项目构建,依赖管理和项目信息管理. 1 项 ...
- Maven学习(1) - Maven入门
home index:http://maven.apache.org/ download:http://maven.apache.org/download.cgi install: http://ma ...
- Maven学习总结--maven入门(一)
一.Maven的基本概念 Maven(翻译为"专家","内行")是跨平台的项目管理工具.主要服务于基于Java平台的项目构建,依赖管理和项目信息管理.
- Maven学习 二 Maven环境搭建
第一步:下载Maven并解压 注意选择镜像地址,选择国内的会快点 解压目录 Maven目录分析 bin:含有mvn运行的脚本 boot:含有plexus-classworlds类加载器框架 conf: ...
- Maven学习- 使用Maven构建Web项目
从网上查了一些资料,才算明白(也就是怎么操作吧),怎么使用Maven构建一个Web项目,找到一篇文档,主要都是从这里学到的: 下载地址:使用Eclipse构建Maven的Web项目.docx 现自己在 ...
- Maven学习(六)-----Maven仓库的详细介绍
Maven仓库的详细介绍 在Maven中,任何一个依赖.插件或者项目构建的输出,都可以称之为构件.Maven在某个统一的位置存储所有项目的共享的构件,这个统一的位置,我们就称之为仓库.(仓库就是存放依 ...
- maven 学习---使用Maven创建Java项目
在本教程中,我们将向你展示如何使用 Maven 来创建一个 Java 项目,导入其到Eclipse IDE,并打包 Java 项目到一个 JAR 文件. 所需要的工具: Maven 3.3.3 Ecl ...
- Maven学习(十七)-----Maven外部依赖
Maven外部依赖 正如大家所了解的那样,Maven确实使用 Maven 库的概念作依赖管理.但是,如果依赖是在远程存储库和中央存储库不提供那会怎么样? Maven 提供为使用外部依赖的概念,就是应用 ...
- Maven学习(三)-----Maven本地资源库
Maven本地资源库 Maven的本地资源库是用来存储所有项目的依赖关系(插件jar和其他文件,这些文件被Maven下载)到本地文件夹.很简单,当你建立一个Maven项目,所有相关文件将被存储在你的M ...
随机推荐
- centos6.5 scala环境变量
[root@m1 ~]# vi /etc/profile export SCALA_HOME=/usr/local/soft/scala-2.11.8export PATH=$PATH:$SCALA_ ...
- CentOS7使用rpm包安装MySQL
说明 本文写于2017-05-20,使用MySQL-5.7.18.操作系统为64位CentOS Linux release 7.2.1511 (Core),以桌面形式安装. 卸载MariaDB Cen ...
- 关于QT中的音频通信问题
今天给大家讲说一个新的东西,使用QT实现音频通信的功能,挺起来是不是很高大上啊,哈哈,实际上我们只是使用一些接口做一些简单的工作而已,并不是让你写一个传输协议和采集音频信息,好了,那我们就来说一说关于 ...
- nodeJS之事件events
前面的话 events模块是node的核心模块,几乎所有常用的node模块都继承了events模块,比如http.fs等.本文将详细介绍nodeJS中的事件机制 EventEmitter 多数 Nod ...
- 一天搞定CSS:css选择器--07
选择器:是指选择标签的方法 1.选择器类型 2.id选择器 代码演示 <!DOCTYPE html> <html> <head> <meta charset= ...
- Python抓取成都房价信息
Python里scrapy爬虫 scrapy爬虫,正好最近成都房价涨的厉害,于是想着去网上抓抓成都最近的房价情况,顺便了解一下,毕竟咱是成都人,得看看这成都的房子我以后买的起不~ 话不多说,进入正题: ...
- Innobackupex全备恢复(原理、演示)
一. Innobackupex恢复原理 After creating a backup, the data is not ready to be restored. There might b ...
- final关键字(最终的)
1.fianl关键字可以用来修饰类.属性.方法: 2.final关键字修饰的类不能再继承: 如:String String类是final修饰的类不能被继承 3.final关键字修饰的方法不能被重写 ...
- kali高速更新源以及主题修改方法
文章不小心删了~这是我以前写的文章了了.实用性较强,所以现在补回来! 安装完kali之后,需要对软件进行一次整体更新:apt-get update & apt-get upgrade 但是,先 ...
- xtrabackup备份原理
Percona XtraBackup工作原理 Percona XtraBackup是基于InnoDB的崩溃恢复功能.复制InnoDB数据文件,导致内部不一致的数据; 但随后它对文件执行崩溃恢复,使它们 ...