Mavenが依存するオプションのタグのシナリオを使用する

オプションの依存関係を使用する

コーディネートに依存します 要素の値は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>

オプションの依存関係を使用してスペースとメモリを節約する

シーンを使用

projectXなどのクラスライブラリを作成すると、多くの関数が含まれる場合がありますが、projectXに依存するprojectAは一部の関数のみを使用します。未使用の関数の場合、projectAは不要な関数のjarパッケージに依存しません。現時点では、projectXはオプションの依存関係を使用する必要があります。

projectX-> projectY(オプション)

projectA-> projectX

projectAがprojectY関連のクラスを使用しない場合、projectYはwarパッケージまたはfatjarにパッケージ化されません。
projectAがすべての関数を使用したい場合は、プロジェクトに関連する依存関係を明示的に導入する必要があります。

参照:

オプションへの導入および依存関係の除外

おすすめ

転載: www.cnblogs.com/junejs/p/12686845.html