zoukankan      html  css  js  c++  java
  • maven parent 与 import 的区别

    在 maven 配置文件 pom.xml 中可以 引入 <parent>,方式如下(举例是 spring-boot-starter-parent 中的继承关系)
     
    <parent>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-dependencies</artifactId>
      <version>1.5.11.RELEASE</version>
      <relativePath>../../spring-boot-dependencies</relativePath>
    </parent>
    这是 maven 中的继承关系,表示该 maven 项目(spring-boot-starter-parent)将会继承目标项目(spring-boot-dependencies)中的依赖,通过这种方式可以实现复用父类中的依赖。
     
    这种复用可以针对两种依赖,一种是定义在 <dependencies> 中的 <dependency>,这种是无条件继承的;还有一种是定义在 <dependencyManagement> 中的 <dependencies>,这种的如果要在子类中使用,需要手动声明,只需要声明 groupId 和 artifactId 就行,版本则不必声明。
     
    使用 parent 一可以实现复用,二还可以统一管理依赖的版本。
     
    import 能实现类似的功能,它能够解决 parent 不能实现的部分问题,比如多继承。但是相比 parent,它只能作用于 <dependencyMannagement> 元素,它所实现的就是能将目标中的配置导入当前 pom 中,但是不包括插件管理 plugin management。
     
    <dependencyManagement>
      <dependencies>
        <dependency>
          <!-- Import dependency management from Spring Boot -->
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-parent</artifactId>
          <version>${spring.boot.version}</version>
          <type>pom</type>
          <scope>import</scope>
        </dependency>
        <dependency>
          <groupId>org.springframework.cloud</groupId>
          <artifactId>spring-cloud-dependencies</artifactId>
          <version>${spring.cloud.version}</version>
          <type>pom</type>
          <scope>import</scope>
        </dependency>
      </dependencies>
    </dependencyManagement>
     

  • 相关阅读:
    CI登录验证
    兼容所有浏览器的JS动态显示当前日期时间
    Active Record 数据库模式-增删改查操作
    数据库链接的增操作举例
    CI框架获取post和get参数 CodeIgniter
    PHP日期操作类代码-农历-阳历转换、闰年、计算天数等
    根据两点间的经纬度计算距离
    Session 类
    mysql 查询优化规则
    php获取文件夹下面的文件列表和文件夹列表
  • 原文地址:https://www.cnblogs.com/bityinjd/p/9046061.html
Copyright © 2011-2022 走看看