diff --git a/CHANGELOG.md b/CHANGELOG.md
index 4fb9e9bc..ed436f62 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,7 @@
## Version 2.4
* [Fix] [#238](https://github.com/gradlex-org/jvm-dependency-conflict-resolution/issues/238) Patch DSL now works for dependencies with non-standard variant names (e.g. com.google.guava).
+* [Deprecation] [#251](https://github.com/gradlex-org/jvm-dependency-conflict-resolution/issues/251) Deprecate GuavaComponentRule in favor of more general patch DSL.
## Version 2.3
* [New Rule] [#66](https://github.com/gradlex-org/jvm-dependency-conflict-resolution/issues/66) itext:itext / com.lowagie:itext (Thanks [Björn Kautler](https://github.com/Vampire) for reporting)
diff --git a/README.md b/README.md
index e9724a96..2663fe31 100644
--- a/README.md
+++ b/README.md
@@ -100,21 +100,14 @@ If some of the transitive dependencies are not wanted in your case, you can fine
jvmDependencyConflicts {
patch {
module("com.google.guava:guava") {
- removeDependency("com.google.code.findbugs:jsr305")
reduceToCompileOnlyApiDependency("com.google.errorprone:error_prone_annotations")
+ reduceToCompileOnlyApiDependency("com.google.j2objc:j2objc-annotations")
+ reduceToCompileOnlyApiDependency("org.jspecify:jspecify")
}
}
}
```
-If you need the previous behavior for older Guava versions, you can explicitly apply the `GuavaComponentRule`.
-
-```kotlin
-dependencies.components {
- withModule
+ *
+ * jvmDependencyConflicts {
+ * patch {
+ * module("com.google.guava:guava") {
+ * reduceToCompileOnlyApiDependency("com.google.errorprone:error_prone_annotations")
+ * reduceToCompileOnlyApiDependency("com.google.j2objc:j2objc-annotations")
+ * reduceToCompileOnlyApiDependency("org.jspecify:jspecify")
+ * }
+ * }
+ * }
+ *
+ *