当前位置:   article > 正文

【maven工程的pom.xml文件内部结构详解+maven工程的多层次依赖管理】_多个层级的.pom文件的引入,最后是哪个层级的有效

多个层级的.pom文件的引入,最后是哪个层级的有效

pom文件内部【结构详解】

<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <!--指定pom模型版本-->
  <modelVersion>4.0.0</modelVersion>
  <!--打包方式 web工程 打包为war;java工程打包为jar-->
  <packaging>war</packaging>

  <!--本项目名称-->
  <name>java03</name>
  
  <!--组织id-->
  <groupId>com.itheima</groupId>
  <!--项目id-->
  <artifactId>java03</artifactId>
  <!--版本号  release(完成版本)  snapshot(开发版本)-->
  <version>1.0</version>

<!--设置当前工程所有依赖-->
  <dependencies>
    <!--设置具体的依赖-->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.12</version>
    </dependency>
  </dependencies>

  <!--构建-->
  <build>
    <!--设置插件-->
    <plugins>
      <!--具体的插件配置-->
      <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <version>2.1</version>
      </plugin>
    </plugins>
  </build>

</project>

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43

pom文件内部【依赖管理】

项目初始情况:
在这里插入图片描述

1、依赖传递:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、依赖传递过程中,版本冲突:

在这里插入图片描述

从上图可以看出,项目02依赖的log4j版本是1.2.13,并非项目03的1.2.14

在这里插入图片描述
在这里插入图片描述

3、依赖传递过程中,对外隐藏+主动断开:

(1)因被其他项目依赖的工程,又不想让其他项目看见自己使用的依赖包,所以在自己的工程中设置【对外隐藏】在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

(2)个人的工程需要依赖其他项目,但是又不想使用所依赖的项目中已经依赖的依赖,主动断开依赖传递的连接
在这里插入图片描述

在这里插入图片描述

对外隐藏(可选依赖)+主动断开(排出依赖)
二者对应的主体不同,注意区分

  1. 对外隐藏(可选依赖):个人不想让其他项目使用自己所依赖的包,对外设置隐藏

  2. 主动断开(排出依赖):个人项目引用其他依赖包或者项目时,为了避免版本冲突也好、不想使用所依赖包的依赖包,所以主动断开依赖度的传递性

pom文件内部【依赖的作用范围】

在这里插入图片描述
在这里插入图片描述
下图的作用范围为重点:
在这里插入图片描述

在这里插入图片描述

上图了解即可

仅个人学习的部分总结,若有不妥之处,还望大佬不吝赐教,感谢~

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/139254
推荐阅读
相关标签
  

闽ICP备14008679号