zoukankan      html  css  js  c++  java
  • 吴裕雄--天生自然SPRINGBOOT开发实战--SpringBoot 依赖管理

    Spring Boot自动管理依赖性和配置。每个Spring Boot版本都提供了它所支持的依赖项列表。依赖关系列表是可以与 Maven 一起使用的 材料清单(弹簧启动依赖关系)的一部分。因此,我们无需在配置中指定依赖项的版本。 Spring Boot自行管理。当我们更新Spring Boot版本时,Spring Boot会以一致的方式自动升级所有依赖项。
    依赖项管理的优点
    通过在一个地方指定Spring Boot版本来提供依赖信息的集中化。当我们从一个版本切换到另一个版本时,它会有所帮助。
    它避免了不同版本的Spring Boot库的不匹配。
    我们只需要写一个库名称并指定版本。在多模块项目中很有用。
    注意: 如果需要,Spring Boot还可以覆盖依赖项版本。
    Maven依赖管理系统
    Maven项目从 spring-boot-starter-parent继承了以下功能:
    默认的 Java编译器版本
    UTF-8 源编码
    它从spring-boot-dependency-pom继承了一个 Dependency Section 。它管理常见依赖项的版本。对于该依赖项,它将忽略 标签。
    从spring-boot-dependencies POM继承的依赖
    智能的resource filtering
    智能的plugin configuration
    继承Starter Parent
    在配置项目时,以下 spring-boot-starter-parent 会自动继承。
    <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.2.2.BUILD-SNAPSHOT</version>      <!-- lookup parent from repository -->
    <relativePath/> 
    </parent>
    注意: 在以上依赖项中,我们仅指定了Spring Boot版本。如果要添加其他启动器,只需删除 标记。同样,我们也可以通过覆盖项目中的属性来覆盖个人依赖性。
    
    例如,如果要添加与已注入的工件相同的另一个依赖项,请将该依赖项再次注入 <properties>标记中以覆盖
    更改Java版本
    我们还可以使用 <java.version>标记来更改Java版本。
    <properties>  
    <java.version>1.8</java.version>  
    </properties>
    添加Spring Boot Maven插件
    我们还可以在 pom.xml 文件中 添加Maven插件。它将项目包装到可执行的 jar 文件中。
    <build>  
    <plugins>  
    <plugin>  
    <groupId>org.springframework.boot</groupId>  
    <artifactId>spring-boot-maven-plugin</artifactId>  
    </plugin>  
    </plugins>  
    </build>  
    不带父项POM的Spring Boot
    如果我们不想使用 spring-boot starter-parent 依赖项,但仍想采用依赖管理的优势,我们可以使用 标签,如下所示:
    注意: 它不维护插件管理。
    <dependencyManagement>
    <dependencies>
    <dependency><!-- import dependency management from Spring Boot -->
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-dependencies</artifactId>
    <version>2.2.2.RELEASE</version>
    <type>pom</type>
    <scope>import</scope>
    </dependency>
    </dependencies>
    </dependencyManagement>
    以上依赖项不允许覆盖。为了实现覆盖,我们需要在项目的 标记中的spring-boot-dependencies条目之前添加一个条目。
    例如,要升级另一个 spring-data-releasetrain ,在pom.xml文件中添加以下依赖项。
    <dependencyManagement>
    <dependencies>
    <!--Override Spring Data release train-->
    <dependency>
    <groupId>org.springframework.data</groupId>
    <artifactId>spring-data-releasetrain</artifactId>
    <version>Fowler-SR2</version>
    <type>pom</type>
    <scope>import</scope>
    </dependency>
    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-dependencies</artifactId>
    <version>2.2.2.RELEASE</version>
    <type>pom</type>
    <scope>import</scope>
    </dependency>
    </dependencies>
    </dependencyManagement>
  • 相关阅读:
    uva 10474 Where is the Marble?(简单题)
    【cocos2d-x 3.7 飞机大战】 决战南海I (二) 我方飞机的实现
    STM32中assert_param的使用
    OC语言--内存管理
    php通过shell调用Hadoop的方法
    前端JSON使用总结
    Google地图接口API之Google地图 API 参考手册(七)
    Google地图接口API之地图类型(六)
    Google地图接口API之地图控件集(五)
    Google地图接口API之地图事件(四)
  • 原文地址:https://www.cnblogs.com/tszr/p/15142367.html
Copyright © 2011-2022 走看看