因为项目需要,新项目需要使用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入门及安装的更多相关文章

  1. Maven学习笔记-01-Maven入门

    一 Maven的基本概念 Maven(翻译为"专家","内行")是跨平台的项目管理工具.主要服务于基于Java平台的项目构建,依赖管理和项目信息管理. 1  项 ...

  2. Maven学习(1) - Maven入门

    home index:http://maven.apache.org/ download:http://maven.apache.org/download.cgi install: http://ma ...

  3. Maven学习总结--maven入门(一)

    一.Maven的基本概念 Maven(翻译为"专家","内行")是跨平台的项目管理工具.主要服务于基于Java平台的项目构建,依赖管理和项目信息管理.

  4. Maven学习 二 Maven环境搭建

    第一步:下载Maven并解压 注意选择镜像地址,选择国内的会快点 解压目录 Maven目录分析 bin:含有mvn运行的脚本 boot:含有plexus-classworlds类加载器框架 conf: ...

  5. Maven学习- 使用Maven构建Web项目

    从网上查了一些资料,才算明白(也就是怎么操作吧),怎么使用Maven构建一个Web项目,找到一篇文档,主要都是从这里学到的: 下载地址:使用Eclipse构建Maven的Web项目.docx 现自己在 ...

  6. Maven学习(六)-----Maven仓库的详细介绍

    Maven仓库的详细介绍 在Maven中,任何一个依赖.插件或者项目构建的输出,都可以称之为构件.Maven在某个统一的位置存储所有项目的共享的构件,这个统一的位置,我们就称之为仓库.(仓库就是存放依 ...

  7. maven 学习---使用Maven创建Java项目

    在本教程中,我们将向你展示如何使用 Maven 来创建一个 Java 项目,导入其到Eclipse IDE,并打包 Java 项目到一个 JAR 文件. 所需要的工具: Maven 3.3.3 Ecl ...

  8. Maven学习(十七)-----Maven外部依赖

    Maven外部依赖 正如大家所了解的那样,Maven确实使用 Maven 库的概念作依赖管理.但是,如果依赖是在远程存储库和中央存储库不提供那会怎么样? Maven 提供为使用外部依赖的概念,就是应用 ...

  9. Maven学习(三)-----Maven本地资源库

    Maven本地资源库 Maven的本地资源库是用来存储所有项目的依赖关系(插件jar和其他文件,这些文件被Maven下载)到本地文件夹.很简单,当你建立一个Maven项目,所有相关文件将被存储在你的M ...

随机推荐

  1. Spark踩坑记——从RDD看集群调度

    [TOC] 前言 在Spark的使用中,性能的调优配置过程中,查阅了很多资料,之前自己总结过两篇小博文Spark踩坑记--初试和Spark踩坑记--数据库(Hbase+Mysql),第一篇概况的归纳了 ...

  2. Vulkan Tutorial 09 图像视图

    操作系统:Windows8.1 显卡:Nivida GTX965M 开发工具:Visual Studio 2017 使用任何的VkImage,包括在交换链或者渲染管线中的,我们都需要创建VkImage ...

  3. PHP数组简介

    一.PHP数组的分类 按照下标的不同,PHP中的数组分为关联数组和索引数组:索引数组:下标从0开始,依次增长. $arr=[1,2,3,4,5]; 关联数组:下标为字符串格式,每个下标字符串与数组的值 ...

  4. 浏览器本地储存方式有哪些?cookie、localStorage、sessionStorage

    现阶段,浏览器提供的储存方式常用的有三种,cookie.localStorage.sessionStorage 1.cookie 概念:cookie 是浏览器中用于保存少量信息的一个对象 基本特征: ...

  5. (转)让浏览器支持Webp

    转载:https://segmentfault.com/a/1190000005898538?utm_source=tuicool&utm_medium=referral Webp介绍 web ...

  6. 最近一个刚刚毕业的朋友说,他面试时候,遇到最频繁的css问题就是垂直居中,这里给出几种垂直居中方式!

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. 用php+mysql+ajax实现淘宝客服或阿里旺旺聊天功能 之 后台页面

    在上一篇随笔中,我们已经看了如何实现前台的对话功能:前台我限定了店主只有一人,店铺只有一个,所有比较单一,但后台就不一样了,而后台更像是我们常见的聊天软件:当然,前台也应该实现这种效果,但原理懂了,可 ...

  8. js传宗接代---继承

    前几天重温了一下js的继承,今天分享给大家: 一,类式继承. 所谓的类式继承就是:第二个类的原型prototype被赋予了第一个类的实例,如subcals.prototype=new supercls ...

  9. java http请求,字节流获取百度数据

    请求的地址为: http://api.map.baidu.com/place/v2/search?&q=%E9%A5%AD%E5%BA%97&region=%E9%87%8D%E5%B ...

  10. 基于spring多数据源动态调用及其事务处理

    需求: 有些时候,我们需要连接多个数据库,但是,在方法调用前并不知道到底是调用哪个.即同时保持多个数据库的连接,在方法中根据传入的参数来确定. 下图的单数据源的调用和多数据源动态调用的流程,可以看出在 ...