zoukankan      html  css  js  c++  java
  • JavaMaven【八、pom.xml】

    简介:




    重点学习:

    1、dependency-scope 依赖范围

    • compile 编译 默认,对编译、测试、运行都有效
    • provided 编译和测试时有效
    • runtime 测试和运行时有效
    • test 测试
    • system 与provided类似,在编译测试时有效,但与本机系统相关联,可移植性差
    • import 导入的范围,它使用在dependencyManagement中,表示从其他pom中导入dependency的配置

    2、依赖传递

    若项目A依赖B,B依赖C
    则在配置pom.xml-dependency后,A的依赖项中也会出现C
    若想排除A对C的依赖,在A的pom中配置exclusion

    3、依赖冲突

    当一个项目通过依赖传递依赖了多个Jar,且这些Jar的版本不同,就会产生依赖冲突
    原则:
    1、短路优先
    A->B->C->X(jar)
    A->D->X(jar) 则有限依赖这个版本的X
    2、路径相同,先声明先依赖
    若路径长度相同,先声明谁优先依赖谁,即优先依赖dependency中写在前面的那个

    4、聚合和继承

    1、聚合
    创建一个容器项目,使用modules引入需要打包的项目

    当install该项目时,被引入的所有项目都会一起打包
    2、继承
    当很多项目都使用同一个包时,可使用dependencyManagement将jar包的配置抽离出来
    创建一个父类项目,配置dependencyManagement

    将需要引用该包的项目依赖坐标中的版本和范围去掉,并使用parent标签引入父项目

  • 相关阅读:
    kafka的使用
    linux卸载mysql
    kafka单机版的安装、集群部署 及使用
    winform改变启动界面
    C#连接sqlserver数据库
    叠加dgv中相同的行信息
    重定向和转发
    [Jenkins] 配置任务中的坑s
    【Android】冷门常用 ADB
    Linux 常用环境搭建
  • 原文地址:https://www.cnblogs.com/shanelau/p/6755042.html
Copyright © 2011-2022 走看看