【Spark开发必备技能】5-1-Maven项目管理-pom.xml配置项详解

目录

1、项目坐标和信息描述

2、引入依赖的JAR包

    2.1、剔除想要排除的JAR包

3、构建项目

4、资源库


一个基本项目的pom.xml文件,通常至少包含以下4个部分:

1、项目坐标和信息描述

  •     项目坐标:

        指的是项目在maven资源库的坐标,通过 groupId + artifactId + version 进行表示。

        groupId:用于指定当前项目所属的组,格式一般是com.组织名.项目名,如图中的com.baidu.dcs。

        artifactId:当前项目所属组的唯一的ID号,如图中的:maven-test

        version:用于指定当前项目的版本编号。比如:1.0-SNAPSHOT。后面的SNAPSHOT指正在开发中的项目。

  •     信息描述
    modelVersion:pom文件的模型版本

    

2、引入依赖的JAR包

    配置依赖的JAR包信息,Maven会从远程仓库自动下载这个JAR到本地仓库,下载完后,就可以在项目中使用这个JAR了

    引入方法:在<dependencies></dependencies>标签中配置需要的JAR包的项目坐标信息,用<dependency></dependency>标签包含

       ’

    依赖包信息的查找及新增依赖包遇到的问题 详见《新增依赖包配置》 

    2.1、剔除想要排除的JAR包

    如果想要排除引入的JAR包,可以使用<exclusions> </exclusions>   

    比如,上述引入sprint后,会产生两个依赖包,如下图:

         

    如果想排除sprint-jcl这个包,可以进行如下操作:

    在<dependencies></dependencies>中添加如下信息后,可以看到,左边部分,sprint-jcl这个包已经被踢除了

  <exclusions>
    <exclusion>
      <groupId>org.springframework</groupId>
      <artifactId>spring-jcl</artifactId>
    </exclusion>
  </exclusions>

         

3、构建项目

    项目构建,进行打包,使用<build></build>标签进行配置

    构建时,可以使用不同的插件,指定不同的功能,常用的功能由如下三种,具体的配置参考图片:

  • maven-assembly-plugin
    设置打包信息,下图配置后,生成的jar包的名称是${artifactId}-${version}-jar-with-dependencies.jar 
                                                   本例得到的是maven-test-1.0-SNAPSHOT-jar-with-dependencies.jar
  •  maven-compiler-plugin

    设置java的版本号

  • maven-resources-plugin   

        设置项目的编码格式    

     

4、资源库

    Maven资源库共包含3种,分别是本地仓库、第三方仓库(私服)、中央仓库

    a、本地仓库

        Maven会将工程中依赖的Jar包从远程下载到本机一个目录下管理,每个电脑默认的仓库是在${user.home}/.m2/repository下

        我们可以在$MAVEN_HOME/conf/setting.xml文件中修改本地仓库的地址,原始的内容如下图

        

         修改后,如下图,将本地仓库地址修改到/Users/huangjiaxin/maven/repository

        

    b、第三方仓库

        第三方仓库,又称为内部中心仓库,也称为私服

        私服:一般是由公司自己设立的,只为本公司内部共享使用。它既可以作为公司内部构件协作和存档,也可作为公用类库镜像缓存,减少在外部访问和下载的频率。          

        注意:连接私服,需要单独配置。如果没有配置私服,默认不使用。

    c、中央仓库 

        Maven内置了远程公用仓库:http://mvnrepository.com

   这个公共仓库是由Maven自己维护,里面有大量的常用类库,并包含了世界上大部分流行的开源项目构件。

        在Maven中心仓库中查询依赖的包信息,详见《新增依赖包配置》中的   Maven中心储存库查询依赖包信息

    注意:当我们执行 Maven 构建命令,Maven 依赖库按以下顺序进行搜索:

  • 第1步 - 搜索依赖本地仓库,如果没有找到,跳到第2步。
  • 第2步 - 搜索依赖中央仓库,如果没有找到,则从远程仓库中,然后移动到步骤4,否则如果找到,那么它下载到本地存储库中,以备将来参考使用。

  • 第3步 - 如果没有提到远程仓库,Maven 则会停止处理并抛出错误(找不到依赖库)。

  • 第4步 - 远程仓库中的搜索依赖,如果找到它会下载到本地仓库以供将来参考使用,否则 Maven 停止处理并抛出错误(找不到依赖库)。

 至此,常用的4个部分的配置都介绍完了,你懂了吗?

猜你喜欢

转载自blog.csdn.net/lovechendongxing/article/details/81103907
今日推荐