Links

Add missing @Override to overriding and implementing methods

org.openrewrite.java.cleanup.MissingOverrideAnnotation
Adds @Override to methods overriding superclass methods or implementing interface methods. Annotating methods improves readability by showing the author's intent to override. Additionally, when annotated, the compiler will emit an error when a signature of the overridden method does not match the superclass method.

Tags

  • RSPEC-1161

Source

  • groupId: org.openrewrite
  • artifactId: rewrite-java
  • version: 7.40.6

Contributors

Options

Type
Name
Description
Boolean
ignoreAnonymousClassMethods
Optional. When enabled, ignore missing annotations on methods which override methods when the class definition is within an anonymous class.

Usage

This recipe has no required configuration parameters and comes from a rewrite core library. It can be activated directly without adding any dependencies.
Gradle
Maven POM
Maven Command Line
build.gradle
plugins {
id("org.openrewrite.rewrite") version("5.40.4")
}
rewrite {
activeRecipe("org.openrewrite.java.cleanup.MissingOverrideAnnotation")
}
repositories {
mavenCentral()
}
pom.xml
<project>
<build>
<plugins>
<plugin>
<groupId>org.openrewrite.maven</groupId>
<artifactId>rewrite-maven-plugin</artifactId>
<version>4.45.0</version>
<configuration>
<activeRecipes>
<recipe>org.openrewrite.java.cleanup.MissingOverrideAnnotation</recipe>
</activeRecipes>
</configuration>
</plugin>
</plugins>
</build>
</project>
You will need to have Maven installed on your machine before you can run the following command.
shell
mvn -U org.openrewrite.maven:rewrite-maven-plugin:run \
-Drewrite.activeRecipes=org.openrewrite.java.cleanup.MissingOverrideAnnotation

See how this recipe works across multiple open-source repositories

Moderne Link Image
The community edition of the Moderne platform enables you to easily run recipes across thousands of open-source repositories.
Please contact Moderne for more information about safely running the recipes on your own codebase in a private SaaS.