maven依賴之optional標簽的使用場景


使用可選依賴

將依賴坐標的 元素的值設置為true,則代表這是一個可選依賴。

<project>
  ...
  <dependencies>
    <!-- declare the dependency to be set as optional -->
    <dependency>
      <groupId>sample.ProjectA</groupId>
      <artifactId>Project-A</artifactId>
      <version>1.0</version>
      <scope>compile</scope>
      <optional>true</optional> <!-- value will be true or false only -->
    </dependency>
  </dependencies>
</project>

使用optional依賴可以節省空間和內存

使用場景

當編寫一個類庫時,比如projectX,可能會包含很多功能,但是依賴projectX的項目projectA只會使用其中一部分功能,對於沒有用到的功能,projectA不希望依賴無用功能的jar包。這時就需要projectX使用optional依賴。

projectX -> projectY(optional)

projectA -> projectX

如果projectA沒有使用projectY相關的類,則projectY不會被打包到war包或fatjar。
如果projectA要使用所有的功能,則需要在自己的項目中顯式的引入相關依賴。

參考:

introduction-to-optional-and-excludes-dependencies


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM