首页 > 技术文章 > maven基础知识

Juaoie 2020-03-03 15:15 原文

maven基础知识

目录

  • Maven简介
  • Manven安装配置
  • Maven本地配置
  • Maven中央仓库
  • Maven依赖机制
  • Maven 常用命令

Maven简介

Maven是一个项目管理和综合工具,Maven为开发人员提供了构建一个完整的生命周期框架。开发团队可以自动完成项目的基础工具建设 ,Maven使用标准的目录结构和默认的构建生命周期。

在多个开发团队环境时,Maven可以设置按标准在非常短的时间完成配置工作。由于大部分羡慕的设置都非常简单,并且可以重复使用,Maven让开发人员的工作更轻松,同时创建报表,检查,构建和测试自动化设置。

Maven提供了开发人员的方式管理:

  • Builds
  • Documentation
  • Reporting
  • Dependencies
  • SCMs
  • Releases
  • Distribution
  • mailing list

概括的说,Maven简化和标准化项目建设过程,处理编译分配,文档,团队协作和其他任务的无缝连接。Maven增加可重用性并负责建立相关的任务。


Maven的安装配置

Maven下载安装

先去Maven官网下载Windows的zip文件,然后解压缩到安装目录,并配置Windows环境变量

注意:请尽量使用jdk1.8以上的版本

JDK和JAVA_HOME

确保已安装JDK,并设置JAVA_HOME环境变量到Windows环境变量中,然后再系统环境变量path中配置上maven路径

验证

在cmd中使用命令:mvn -version

输出:


本地仓库

在安装目录下的conf文件夹中有个setting.xml文件,该文件用来配置maven信息,在大概56行的位置写入以下代码:

<localRepository>D:\maven\jar_home</localRepository>

这行代码表示本地仓库的位置,可以自己随意设置本地仓库地址。在这行上面还有几行注释的代码,表示默认本地仓库地址,默认地址为当前用户的home目录下的.m2/repository文件夹下,代码如下:

 <!-- localRepository
   | The path to the local repository maven will use to store artifacts.
   |
   | Default: ${user.home}/.m2/repository
  <localRepository>/path/to/local/repo</localRepository>
  -->

Maven中央仓库

当我们建立一个Maven的项目。Maven会检测你的pom.xml文件,以确定哪些依赖下载,首先,Maven将从本地资源库获取依赖资源,如果没有找到,然后会将从中央仓库http://repol.maven.org/maven2下载依赖到本地仓库,我们也可以进入http://mvnrepository.com进行搜索我们所需的依赖,由于从外网下载依赖很慢,所有我们需要配置阿里镜像,这和npm配置cnpm的阿里镜像的原理是一样的,setting.xml文件第149行左右插入以下代码:

  <mirrors>
      <mirror>
        <id>nexus-aliyun</id>
        <mirrorOf>*</mirrorOf>
        <name>Nexus aliyun</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public</url>
    </mirror>
  </mirrors>

Maven依赖机制

Maven依赖机制概念

在Maven依赖机制的帮助下自动下载所有必须的依赖库,并保持版本升级。

传统方式

  • 访问http://logging.apache.org/log4j/
  • 下载Log4j的jar库
  • 复制jar到项目类路径
  • 手动将其包含到项目的依赖
  • 所有的管理需要一切自己做

如果有Log4j版本升级,则需要重复上述步骤

Maven的方式

  • 仅仅需要知道log4j的Maven的坐标,例如:
<dependency>
    <groupId>log4j</groupId>
    <artifactId>log4j</artifactId>
    <version>1.2.17</version>
</dependency>

如果有Log4j版本升级,只要更新pom.xml中的这个版本号更新就可以了


Maven 常用命令

清除产生的项目

mvn clean

编译源代码

mvn compils

打包

mvn package

只打包不测试(跳过测试)

mvn package -Dmaven.test.skip=true

安装到本地仓库

mvn instail

源码打包

mvn source:jar
或
mvn source:jar-no-fork

推荐阅读