什么是Maven

Maven是一个采用纯Java编写的开源项目管理工具, Maven采用了一种被称之为Project Object Model (POM)概念来管理项目,所有的项目配置信息都被定义在一个叫做POM.xml的文件中..

Maven是一款跨平台的项目管理工具,是一个开源的项目…

Maven主要服务于基于Java平台的项目构建、依赖管理和项目信息管理

POM怎么理解呢???

  • 我们使用Java是面向对象编程,对象就是我们的类
  • 而Maven是面向项目,把我们的项目看做成是一个对象来进行管理

为什么要使用Maven??

在没有使用Maven之前,我们的jar包是不是非常杂乱???看一下我存放jar包的地方

在没有学习Maven之前,我还想过把这些jar包一一整理出来,万一硬盘坏了,那我的jar包又要去重新找了..而且由于jar包版本的问题,已经吃过不少亏…这就需要大量时间去整理jar包了…

曾经想手动打jar包,结果Intellij idea好像不太支持这种功能??【我还没找到】….于是只能依靠原生的jar 命令去打jar包了,过了一阵子,想重新打jar包的时候,又忘记命令了…非常苦恼

而我们的Maven就非常好地解决了上面这两种情况了,当然了,Maven的功能并不是只有这么一丢丢,我只是举了两个小例子而已…随着我们的学习,你将会看到Maven的强大之处…

Maven可以管理项目的整个声明周期,包括清除、编译,测试,报告、打包、部署等等。

自动构建项目

  • 软件开发: 可行性分析、需求分析、软件设计、软件开发、发布、运维
  • 软件构建: 软件已经开发完毕,需要构建成一个产品进行发布

    构建步骤:
  • 清除–> 编译–>测试–>报告–>打包(jar\war)–>安装–>部署到远程 maven可以通过一个命令实现自动构建软件项目

Maven拥有“约定优于配置“这么一个理念,也就是说,把一些规范约定下来,人们就这么用!如果我们事先约定好所有项目的目录结构,标准开发过程(编译,测试) , 所有人都遵循这个约定。软件项目的管理就会变得简单很多。比如:如何过马路(红灯停绿灯行),如何开门,关门等。

安装Maven

去官网下载Maven软件,解压过后就算安装完毕了…

配置环境变量

因为Maven是由Java编写的,因此想要使用Maven,首先要配置Java的环境变量…

检测安装Maven是否成功,在控制台上打上 mvn -version就行了…

Maven目录结构

  • bin:含有mvn运行的脚本
  • boot:含有plexus-classworlds类加载器框架
  • conf:含有settings.xml配置文件
  • lib:含有Maven运行时所需要的java类库
  • Settings.xml 中默认的用户库: ${user.home}/.m2/repository[通过maven下载的jar包都会存储到指定的个人仓库中]
  • Maven默认仓库下载地址在: maven的lib目录下maven-model-builder-3.0.4.jar的pom.xml中

在我们Maven中,有本地仓库这么一个概念,我们可以在settings.xml配置文件中修改本地仓库的位置,比如我把本地仓库放到桌面上


Maven第一篇【介绍、安装、结构目录】的更多相关文章

  1. 【OpenCV第一篇】安装OpenCV

    [OpenCV第一篇]安装OpenCV 本篇主要介绍如何下载OpenCV安装程序,如何在VS2008下安装配置OpenCV,文章最后还介绍了一个使用OpenCV的简单小例子. <OpenCV入门 ...

  2. SaltStack入门到精通第一篇:安装SaltStack

    SaltStack入门到精通第一篇:安装SaltStack 作者:纳米龙  发布日期:2014-06-09 17:50:36   实际环境的设定: 系统环境: centos6 或centos5 实验机 ...

  3. Jenkins拾遗--第一篇(安装Jenkins)

    起因 近期由于工作需要做起了起了jenkins的维护.不做不知道,一搞发现里边全是小坑.两个月弄了一身泥.曾经小瞧了它,但是发现其实要弄好它不是那么容易的.有句知名的话"没有总结就没有提高. ...

  4. Java并发包下锁学习第一篇:介绍及学习安排

    Java并发包下锁学习第一篇:介绍及学习安排 在Java并发编程中,实现锁的方式有两种,分别是:可以使用同步锁(synchronized关键字的锁),还有lock接口下的锁.从今天起,凯哥将带领大家一 ...

  5. spring cloud系列教程第一篇-介绍

    spring cloud系列教程第一篇-介绍 前言: 现在Java招聘中最常见的是会微服务开发,微服务已经在国内火了几年了,而且也成了趋势了.那么,微服务只是指spring boot吗?当然不是了,微 ...

  6. 第五篇 scrapy安装及目录结构,启动spider项目

    实际上安装scrapy框架时,需要安装很多依赖包,因此建议用pip安装,这里我就直接使用pycharm的安装功能直接搜索scrapy安装好了. 然后进入虚拟环境创建一个scrapy工程: (third ...

  7. Maven教程1(介绍安装和配置)

    官网地址:http://maven.apache.org/ 1.Maven介绍 1.1为什么需要使用Maven 之前学Spring和SpringMVC的时候我们需要单独自己去找相关的jar. 这些ja ...

  8. [转]RobotFrameWork+APPIUM实现对安卓APK的自动化测试----第一篇【安装】

    前言:关于RobotFrameWork+APPIUM实现对安卓APK的自动化测试的文章都是取自于乐于分享知识于网络的好心人们,所以我也希望我的知识可以分享给大家. 首先我们先罗列一下我们要安装的软件 ...

  9. RobotFrameWork+APPIUM实现对安卓APK的自动化测试----第一篇【安装】

    文章来源http://blog.csdn.net/deadgrape/article/details/50563119 前言:关于RobotFrameWork+APPIUM实现对安卓APK的自动化测试 ...

随机推荐

  1. Spring Boot 出现 in a frame because it set 'X-Frame-Options' to 'DENY'

    在spring boot项目中出现不能加载iframe 页面报一个"Refused to display 'http://......' in a frame because it set ...

  2. EasuUI-js(EasyUI formatter格式化教程) 判断常用:

    EasuUI-js(EasyUI formatter格式化教程) 判断常用: 1.YN标记: formatter : function(c1, row,index) { var a = "& ...

  3. RPC服务不可用总结

    A简单方法: 通过"控制面板/管理工具/服务",检查一下RPC的Remote Procedure Call (RPC)和Remote Procedure Call (RPC) Lo ...

  4. zoj3777 Problem Arrangement

    The 11th Zhejiang Provincial Collegiate Programming Contest is coming! As a problem setter, Edward i ...

  5. shell 之解释器、变量、字符串、数组

    1.Shell简介 Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁.Shell 既是一种命令语言,又是一种程序设计语言.Shell 是指一种应用程序,这个应用程序提供了一个 ...

  6. 聊一聊Redis的数据结构

    如果没有记错的话,应该是在两个月前把 我们经常看到此类的文章: Redis的五种数据结构 Redis的数据结构以及对应的使用场景 其实以数据结构这个词去说明Redis的String.Hash.List ...

  7. 2017年9月3日 Spring及Mybatis中连接数据库的不同方式

    连接数据库用spring和mybatis中使用的方法可以不同,mybaits可以不用写数据库的配置文件 Spring的连接方法 <!-- 读取属性文件(.properties)的内容 --> ...

  8. CSS照片墙

    <!doctype html><html><head><meta charset="utf-8"><title>CSS照 ...

  9. 表单校验demo

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

  10. AHD-模拟高清芯片RN6752替代TVP5150/CJC5150

    RN6752功能:2路CVBS转BT656/601/1302高清视频解码芯片.产品特征输入:2路CVBS(不能同时输入)和S-VIDEO(一般不用)输出:BT601/656/1302支持NTSC,PA ...