zoukankan      html  css  js  c++  java
  • Maven简介

    在开发过程中,会使用一些开源框架、第三方的工具等等,这些都是以jar包的方式被项目所引用,并且有些jar包还会依赖其他的jar包,我们同样需要添加到项目中,所有这些相关的jar包都会作为项目的依赖。通常,一个Java EE项目所依赖的jar包有很多。然而,这还并非是主要问题,在管理这些jar包过程中,jar包的版本往往是最令人头疼的问题。选择一个jar包的版本,需要考虑它所依赖的jar包是否支持这个版本,并且还需要确认依赖它的jar包能不能对这个版本兼容。所以,在过去的构建项目过程中,整理出这么一堆能让项目正常运行的jar包之后,这个lib目录就会变为禁区。
    Maven的出现,解决了开发过程中的这一难题。它可以对项目依赖的jar包进行管理,可以让你的项目保持基本的依赖,排除冗余jar包,并且可以让你非常轻松的对依赖的jar包进行版本升级。而这些仅仅是Maven最基本的功能,它可以在这基础上对项目进行清理、编译、测试、打包、发布等等构建项目的工作。
    可以说,Maven是现在Java社区中最强大的项目管理和项目构建工具,而更加值得庆幸的是,这样一个强大的工具,它的使用也是非常简单的。
    现在,JavaEE项目使用的开源软件都可以通过Maven来获取,并且,越来越多的公司也开始使用Maven来管理构建项目了。
     
    二、Maven下载安装
    1、配置Java运行环境
    Maven依赖Java运行环境,因此使用Maven之前需要配置Java的运行环境。下载并安装JDK,配置JDK的环境变量:
        JAVA_HOME=D:DevToolJavajdk1.6.0_38
        在path中加入%JAVA_HOME%in;
    2、安装Maven
     
    下载Maven最新版本的二进制zip压缩包就可以,如:apache-maven-3.0.5-bin.zip
    下载完成后,解压,例如把解压后的文件夹放在D:DevTool目录下。
    然后,将Maven的bin目录添加到path环境变量中,即:D:DevToolapache-maven-3.0.4in
    在Windows命令提示符下,输入mvn -v测试即可知道是否安装成功。

    三、Maven依赖管理
    前面讲了,Maven最核心的就是对依赖jar包的管理,那么它是通过什么方式来进行管理的呢?
    Maven要求每一个jar包都必须明确定义自己的坐标,Maven就是通过这个坐标来查找管理这些jar包的。
    在Maven中,一个jar包的坐标是由它的groupId、artifactId、version这些元素来定义的。例如:
        <groupId>org.apache.struts</groupId>
        <artifactId>struts2-core</artifactId>
        <version>2.3.8</version>
        <packaging>jar</packaging>
    groupId:表明其所属组织或公司及其所属项目,命名规则为组织或公司域名反转加项目名称。
    artifactId:项目的模块名,通常与实际项目名称一致。模块的命名通常为项目名前缀加模块名。
    version:当前项目的版本号。
    packaging:定义项目的打包方式,可选值有jar、war、pom。默认为jar
    注::一个组织或公司都会有很多的项目,而每个项目下都会划分多个模块,在开发中我们可以灵活选择依赖某个模块。而Maven管理的jar包基本都是模块性质的项目构建出的jar包。所以,artifactId通常都是模块名,而不是项目名称。项目名称是和组织名称组合作为groupId来使用的。
     
    上面的配置定义了一个Maven项目的坐标,而如果在项目中依赖这个项目时,同样是利用它的坐标来指定依赖。例如:
    <project>
        ...
        <dependencies>
            <dependency>
                <groupId>org.apache.struts</groupId>
                <artifactId>struts2-core</artifactId>
                <version>2.3.8</version>
            </dependency>
        </dependencies>
        ...
    </project>
     
    Maven的配置文件中dependencies元素包含了所有依赖的jar包,每一个jar包依赖使用dependency元素定义。
    在声明一个jar包依赖时,除了指定groupId、artifactId、version这三项基本坐标外,还可以使用使用以下元素进行配置:
    scope元素:指定依赖的范围

    exclusions元素:排除传递性依赖
  • 相关阅读:
    某不知名的树形Dp
    HDU-5963 朋友 思维
    CF1292C Xenon's Attack on the Gangs
    Emergency Evacuation 模拟了一下
    NOI2003 逃学的小孩
    UVA11300 Spreading the Wealth 数学
    ACWing 1510 楼梯
    测试代码高亮
    Pollard-rho的质因数分解
    米勒罗宾素数检测(Miller-Rabin)
  • 原文地址:https://www.cnblogs.com/douzhanshen/p/3984743.html
Copyright © 2011-2022 走看看