关于maven:maven-pomxml-dependency和dependencymanagment理解

9次阅读

共计 1007 个字符,预计需要花费 3 分钟才能阅读完成。

背景

对 maven 的 jar 包引入的了解

按优先级降级

    ●间接依赖 (以后我的项目含有 depency)
        1. 以后我的项目的 depency 版本
        2. 以后我的项目的 depencymanagment
        3. 以后我的项目继承的 depencymanagment
    ●间接依赖 (以后我的项目无 depency)
        1. 以后我的项目的 depencymanagment
        2. 以后我的项目继承的 depencymanagment
        3. 被依赖我的项目的 depency 版本
        4. 被依赖我的项目的 depencymanagment
        5. 被依赖我的项目继承的 depencymanagment

例子

    ●springbootparent 为父,指定了 depencymanagment,kafka 版本为 2.0.1
    ●project 为子,分状况探讨,如果指定版本的话,为 2.5.0
    ●kafka-api 为被依赖我的项目,kafka 版本为 3.4.0

project 分状况探讨
    ●有父,有 kafka-api
        1.depency 指定 kafka,指定版本,kafka 为间接依赖,版本为 2.5.0
        2.depency 指定 kafka,不指定版本,kafka 为间接依赖,应用继承的 depencymanagment,版本为 2.0.1
        3.depency 不指定 kafka,kafka 为间接依赖,应用继承的 depencymanagment,版本为 2.0.1
    ●有父, 无 kafka-api
        1.depency 指定 kafka,指定版本,kafka 为间接依赖,版本为 2.5.0
        2.depency 指定 kafka,不指定版本,kafka 为间接依赖,应用继承的 depencymanagment,版本为 2.0.1
        3.depency 不指定 kafka,无 kafka
    ●无父,有 kafka-api
        1.depency 指定 kafka,指定版本,kafka 为间接依赖,版本为 2.5.0
        2.depency 指定 kafka,不指定版本,kafka 为间接依赖,行为不可预测,可能报错,也可能沿用之前胜利引入过的版本
        3.depency 不指定 kafka,kafka 为间接依赖,版本为 3.4.0
    ●无父,无 kafka-api
        1.depency 指定 kafka,指定版本,kafka 为间接依赖,版本为 2.5.0
        2.depency 指定 kafka,不指定版本,kafka 为间接依赖,行为不可预测,可能报错,也可能沿用之前胜利引入过的版本
        3.depency 不指定 kafka,无 kafka
正文完
 0