ホームページ  >  記事  >  Java  >  Gradle で特定の推移的な依存関係を除外するにはどうすればよいですか?

Gradle で特定の推移的な依存関係を除外するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-10-26 08:23:30985ブラウズ

How do I exclude specific transitive dependencies in Gradle?

Gradle で推移的な依存関係を除外する方法

背景

場合によっては、Gradle プロジェクトから特定の依存関係を除外する必要がある場合があります。これは、不要な推移的な依存関係を持つライブラリがプロジェクトに含まれている場合に特に便利です。

解決策

個々の推移的な依存関係を除外するには、グループとモジュールの両方を指定して除外ルールを使用します。次に例を示します。

<code class="groovy">configurations {
  runtime.exclude group: "org.slf4j", module: "slf4j-log4j12"
}</code>

説明

除外ルールは、グループとモジュールという 2 つの属性を取ります。グループとモジュールの両方を指定すると、除外する依存関係を正確に識別できます。

除外ルールで任意のプロパティ (名前など) を指定しようとすると、Gradle によってエラーが発生します。これは、除外ルールがグループとモジュールのプロパティのみを受け入れるためです。

Maven モジュールと Gradle モジュール

Maven では、モジュールの概念は jar に相当します。ただし、Gradle では、モジュールという用語はより柔軟であり、単一の成果物または関連する成果物のグループ (複数の依存関係を持つプラグインなど) を指すことができます。 Gradle 除外ルール内のモジュールの具体的な意味は、コンテキストによって異なります。

追加メモ

  • 特定の個別の依存関係から依存関係を除外するには、次の構文を使用します。
<code class="groovy">dependencies {
  compile ('org.springframework.data:spring-data-hadoop-core:2.0.0.M4-hadoop22') {
    exclude group: "org.slf4j", module: "slf4j-log4j12"
  }
}</code>

以上がGradle で特定の推移的な依存関係を除外するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。