org.secure.dependency:dependency:1.1
の依存関係を、ビルドファイルのimplementation("org.secure.dependency:dependency:1.1")
に明示的に宣言することができます。指定した依存関係のバージョンは、推移的な依存よりも優先されます。
は、私は最高のパターンは、我々はユーザーの
Dependency Managementセクションから提供されているツールを使用すると思う(
exampleを参照)別のオプションは、依存関係が持ち込まれていないことを確認する
exclude
ルールを指定することがあるかもしれませんガイド。この場合、
resolutionStrategy
APIを使用できるはずです。最初に要求された依存関係を、必要な依存関係に置き換えることができます。
この例では、すべてのConfiguration
の解決ルールを設定:
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
if (details.requested.group == "org.vulnerable.dependency"
&& details.requested.name == "dependency"
&& details.requested.version == "1.0") {
details.useTarget("org.secure.dependency:dependency:1.1")
}
}
}
のGradleユーザガイドはまた、唯一のバージョンが変更され、example上記断片に非常に類似している(あなたさexampleを有します使用事例)。