Maison > Java > javaDidacticiel > le corps du texte

Comment exclure des dépendances transitives spécifiques dans Gradle : une solution pour exclure slf4j-log4j12

Patricia Arquette
Libérer: 2024-10-26 18:35:30
original
283 Les gens l'ont consulté

How to Exclude Specific Transitive Dependencies in Gradle:  A Solution for Excluding slf4j-log4j12

Exclusion de dépendances spécifiques lors de la construction de Gradle

Gradle permet d'exclure des dépendances transitives spécifiques pour éviter les artefacts indésirables dans vos fichiers jar construits. Dans cet article, nous allons explorer comment exclure org.slf4j:slf4j-log4j12 à l'aide des configurations Gradle.

Énoncé du problème

Un projet Gradle utilisant le plugin d'application a rencontré des difficultés en excluant slf4j-log4j12 de ses dépendances d'exécution. Les premières tentatives pour l'exclure à l'aide de la configuration runtime.exclude ont exclu tous les artefacts org.slf4j, y compris slf4j-api.

Solution

Pour résoudre le problème, utilisez la syntaxe suivante pour spécifier à la fois le groupe et module :

configurations {
  runtime.exclude group: "org.slf4j", module: "slf4j-log4j12"
}
Copier après la connexion

Cette approche garantit l'exclusion uniquement de la dépendance souhaitée, laissant les autres artefacts org.slf4j inchangés.

Notes supplémentaires

Lors de l'exclusion d'un individu dépendance, seules les propriétés du groupe et du module sont disponibles en tant que prédicats. Contrairement aux déclarations de dépendances, vous ne pouvez pas spécifier de propriétés arbitraires telles que le nom.

Le concept de « module » dans Gradle s'aligne sur la notion Maven d'artefactId. Dans l'exemple ci-dessus, slf4j-log4j12 représente le module. Pour déterminer le nom du module d'un artefact Maven, reportez-vous à son composant artificialId.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!