91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Maven最佳實踐之一個好的parent依賴基礎

發布時間:2020-09-21 20:02:25 來源:腳本之家 閱讀:345 作者:isea533 欄目:編程語言

使用parent 控制依賴版本是很常見的事。

如果你有過控制依賴版本的這種經歷,你可能就會遇到過第三方版本之間的沖突,本文不介紹如何解決沖突,但是會提供給你一個基本不存在沖突的基礎依賴。

得益于 Spring ,尤其是 Spring Boot 對第三方集成提供的 starter。Spring Boot 對可能用到的第三方依賴提供了很好的版本控制,我們就依靠 Spring 提供的 bom 和 dependencies 來實現我們自己的基礎依賴。

由于 Spring Boot 2.0 正式版還沒有發布,這里提供的是 Spring 4.x 最新版本的依賴,這兩個依賴分別如下:

Spring Framework (Bill Of Materials) » 4.3.12.RELEASE

Maven最佳實踐之一個好的parent依賴基礎

Spring Boot Dependencies » 1.5.8.RELEASE

Maven最佳實踐之一個好的parent依賴基礎

上圖只顯示部分依賴

這兩個依賴搭配的時候,可以通過上面第一個確定你要選擇的 Spring 版本,然后去 Spring Boot 這個依賴中選擇和 Spring 版本對應的版本(Spring Boot 中有對 spring-core 的依賴)。上面這兩個版本就是目前(2017-11-05)最新的版本。

依據這兩個依賴,我們創建一個基礎的依賴如下:

<?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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>tk.mybatis</groupId>
  <artifactId>spring-dependencies</artifactId>
  <packaging>pom</packaging>
  <version>4.3.12.RELEASE</version>
  <name>基礎依賴版本管理</name>
  <properties>
<springframework.version>4.3.12.RELEASE</springframework.version>
<springboot.version>1.5.8.RELEASE</springboot.version>
  </properties>
  <dependencyManagement>
    <dependencies>
      <!-- 統一管理Spring依賴 -->
      <dependency>
<groupId>org.springframework</groupId>
        <artifactId>spring-framework-bom</artifactId>
        <version>${springframework.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <!--通過Spring Boot管理其他第三方版本-->
      <dependency>
<groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-dependencies</artifactId>
        <version>${springboot.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <!--其他-->
    </dependencies>
  </dependencyManagement>
</project>

注意兩個依賴都是添加在 dependencyManagement 中,并且指定 <type>pom</type> 和 <scope>import</scope>,import 是 <scope> 中最特別的一個類型,這個類型只能用于這種情況。

同時要注意這兩個依賴的順序,越靠前面優先級越高。

如果你查看上面pom.xml 文件最終生成的 effective-pom,就會發現這是一個有 3000 多行的文件,這里面幾乎包含了常見的各種依賴,少數不包含在內再額外添加即可。

除了上面的配置外,一個基礎的 pom 還可以在增加一些常見插件的配置。下面是一個簡單的示例。

 <build>
  <plugins>
   <plugin>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
     <source>1.8</source>
     <target>1.8</target>
    </configuration>
   </plugin>
  </plugins>
</build>

指定編譯時的 JDK 版本是非常有必要的,尤其是在使用 IDEA 的情況下,這樣可以避免 IDEA 選擇 1.5 作為默認值的一些編譯錯誤。由于不同環境使用的插件不太相同,所以這里只是一個示例,不需要按照這種方式使用。更合理的用法可能是創建一個插件的基礎 pom(plugin-pom),然后在上面的的 pom 中設置 parent 為 plugin-pom,這樣能滿足更多情況下的選擇。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對億速云的支持。如果你想了解更多相關內容請查看下面相關鏈接

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

云龙县| 旬阳县| 诸暨市| 新宁县| 六枝特区| 台中县| 凤台县| 定陶县| 岚皋县| 宜川县| 华宁县| 邵阳市| 广宁县| 张北县| 盱眙县| 股票| 英德市| 平和县| 介休市| 阿拉善左旗| 双柏县| 滦平县| 新乐市| 镇江市| 漳平市| 缙云县| 洪湖市| 周宁县| 手机| 太保市| 炉霍县| 东至县| 敖汉旗| 盐边县| 册亨县| 平罗县| 乌审旗| 安陆市| 盐山县| 平南县| 山东|