You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by gn...@apache.org on 2025/06/06 14:29:02 UTC

(maven) branch master updated: Add missing @Override to overriding and implementing methods (#2402)

This is an automated email from the ASF dual-hosted git repository.

gnodet pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven.git


The following commit(s) were added to refs/heads/master by this push:
     new b61b3bd0b0 Add missing @Override to overriding and implementing methods (#2402)
b61b3bd0b0 is described below

commit b61b3bd0b0e473ac2a62f41ec635c7df11396b57
Author: Pankraz76 <88...@users.noreply.github.com>
AuthorDate: Fri Jun 6 16:28:57 2025 +0200

    Add missing @Override to overriding and implementing methods (#2402)
    
    Co-authored-by: Vincent Potucek <vp...@me.com>
---
 .../org/apache/maven/api/cli/mvn/MavenOptions.java |  1 +
 .../maven/api/cli/mvnenc/EncryptOptions.java       |  1 +
 .../apache/maven/api/cli/mvnsh/ShellOptions.java   |  1 +
 .../java/org/apache/maven/api/ExtensibleEnums.java |  1 +
 .../main/java/org/apache/maven/api/Lifecycle.java  |  3 ++
 .../main/java/org/apache/maven/api/Packaging.java  |  1 +
 .../src/main/java/org/apache/maven/api/Type.java   |  1 +
 .../main/java/org/apache/maven/api/Version.java    |  1 +
 .../org/apache/maven/api/VersionConstraint.java    |  1 +
 .../java/org/apache/maven/api/VersionRange.java    |  1 +
 .../ArtifactCoordinatesFactoryRequest.java         |  1 +
 .../org/apache/maven/api/services/BaseRequest.java |  2 +
 .../DependencyCoordinatesFactoryRequest.java       |  1 +
 .../maven/api/services/ModelBuilderResult.java     |  1 +
 .../maven/api/services/xml/XmlReaderRequest.java   |  1 +
 .../org/apache/maven/api/model/InputLocation.java  |  2 +
 .../another/ExtendedPluginDescriptorTest.java      |  1 +
 .../maven/artifact/InvalidArtifactRTException.java |  1 +
 .../resolver/CyclicDependencyException.java        |  1 +
 .../artifact/versioning/ComparableVersion.java     |  2 +
 .../versioning/DefaultArtifactVersion.java         |  7 +++
 .../maven/artifact/versioning/Restriction.java     |  1 +
 .../maven/artifact/versioning/VersionRange.java    |  3 ++
 .../org/apache/maven/building/DefaultProblem.java  |  7 +++
 .../apache/maven/DefaultArtifactFilterManager.java |  4 ++
 .../maven/DefaultProjectDependenciesResolver.java  |  4 ++
 .../org/apache/maven/artifact/ArtifactStatus.java  |  4 ++
 .../artifact/deployer/DefaultArtifactDeployer.java |  2 +
 .../installer/DefaultArtifactInstaller.java        |  2 +
 .../artifact/manager/DefaultWagonManager.java      |  5 ++
 .../artifact/metadata/ArtifactMetadataSource.java  |  4 ++
 .../repository/DefaultArtifactRepository.java      | 25 +++++++++
 .../DefaultArtifactRepositoryFactory.java          |  7 +++
 .../repository/LegacyLocalRepositoryManager.java   | 51 ++++++++++++++++++
 .../repository/layout/FlatRepositoryLayout.java    |  4 ++
 .../metadata/AbstractRepositoryMetadata.java       | 11 ++++
 .../metadata/ArtifactRepositoryMetadata.java       | 10 ++++
 .../metadata/DefaultRepositoryMetadataManager.java |  5 ++
 .../metadata/GroupRepositoryMetadata.java          |  9 ++++
 .../repository/metadata/MetadataBridge.java        | 10 ++++
 .../SnapshotArtifactRepositoryMetadata.java        | 10 ++++
 .../resolver/ArtifactResolutionRequest.java        |  9 ++++
 .../resolver/ArtifactResolutionResult.java         |  1 +
 .../artifact/resolver/DebugResolutionListener.java | 14 +++++
 .../artifact/resolver/DefaultArtifactResolver.java | 12 +++++
 .../resolver/DefaultResolutionErrorHandler.java    |  1 +
 .../resolver/WarningResolutionListener.java        | 11 ++++
 .../resolver/filter/InversionArtifactFilter.java   |  1 +
 .../artifact/resolver/filter/OrArtifactFilter.java |  1 +
 .../resolver/filter/TypeArtifactFilter.java        |  1 +
 .../artifact/versioning/ManagedVersionMap.java     |  1 +
 .../maven/execution/DefaultRuntimeInformation.java |  2 +
 .../plugin/internal/DefaultPluginManager.java      |  8 +++
 .../maven/profiles/DefaultProfileManager.java      | 12 +++++
 .../activation/DetectedProfileActivator.java       |  1 +
 .../profiles/activation/FileProfileActivator.java  |  3 ++
 .../activation/JdkPrefixProfileActivator.java      |  2 +
 .../OperatingSystemProfileActivator.java           |  2 +
 .../activation/SystemPropertyProfileActivator.java |  3 ++
 .../maven/project/DefaultMavenProjectBuilder.java  |  9 ++++
 .../DefaultProjectBuilderConfiguration.java        | 10 ++++
 .../project/artifact/ActiveProjectArtifact.java    | 49 +++++++++++++++++
 .../artifact/DefaultMavenMetadataCache.java        |  3 ++
 .../project/artifact/ProjectArtifactMetadata.java  |  9 ++++
 .../AbstractStringBasedModelInterpolator.java      |  8 +++
 .../interpolation/BuildTimestampValueSource.java   |  1 +
 .../PathTranslatingPostProcessor.java              |  1 +
 .../interpolation/RegexBasedModelInterpolator.java |  1 +
 .../StringSearchModelInterpolator.java             |  3 ++
 .../maven/project/path/DefaultPathTranslator.java  |  4 ++
 .../project/validation/DefaultModelValidator.java  |  2 +
 .../project/validation/ModelValidationResult.java  |  1 +
 .../maven/repository/ArtifactTransferEvent.java    |  3 ++
 .../maven/repository/DefaultMirrorSelector.java    |  1 +
 .../DelegatingLocalArtifactRepository.java         |  2 +
 .../maven/repository/LocalArtifactRepository.java  |  1 +
 .../repository/MetadataResolutionRequest.java      |  1 +
 .../maven/repository/MetadataResolutionResult.java |  1 +
 .../repository/legacy/LegacyRepositorySystem.java  | 26 +++++++++
 .../maven/repository/legacy/MavenArtifact.java     |  5 ++
 .../repository/legacy/TransferListenerAdapter.java |  6 +++
 .../legacy/metadata/AbstractArtifactMetadata.java  |  4 ++
 .../metadata/DefaultMetadataResolutionRequest.java | 12 +++++
 .../legacy/metadata/MetadataResolutionRequest.java |  6 +++
 .../DefaultArtifactRepositoryFactory.java          |  7 +++
 .../resolver/DefaultLegacyArtifactCollector.java   |  3 ++
 .../conflict/DefaultConflictResolverFactory.java   |  2 +
 .../conflict/FarthestConflictResolver.java         |  1 +
 .../resolver/conflict/NearestConflictResolver.java |  1 +
 .../resolver/conflict/NewestConflictResolver.java  |  1 +
 .../resolver/conflict/OldestConflictResolver.java  |  1 +
 .../transform/AbstractVersionTransformation.java   |  1 +
 .../DefaultArtifactTransformationManager.java      |  5 ++
 .../transform/LatestArtifactTransformation.java    |  4 ++
 .../resolver/transform/SnapshotTransformation.java |  4 ++
 .../repository/metadata/ClasspathContainer.java    |  1 +
 .../metadata/DefaultClasspathTransformation.java   |  1 +
 .../DefaultGraphConflictResolutionPolicy.java      |  1 +
 .../metadata/DefaultGraphConflictResolver.java     |  1 +
 .../repository/metadata/MetadataGraphVertex.java   |  1 +
 .../settings/DefaultMavenSettingsBuilder.java      |  5 ++
 .../maven/toolchain/DefaultToolchainsBuilder.java  |  1 +
 .../maven/toolchain/java/JavaToolchainFactory.java |  2 +
 .../maven/toolchain/java/JavaToolchainImpl.java    |  2 +
 .../maven/ProjectDependenciesResolverTest.java     |  1 +
 .../deployer/SimpleArtifactMetadataSource.java     |  4 ++
 .../artifact/metadata/TestMetadataSource.java      |  5 ++
 .../maven/artifact/resolver/TestFileWagon.java     |  3 ++
 .../maven/project/ClasspathArtifactResolver.java   |  2 +
 .../maven/project/EmptyLifecycleExecutor.java      |  6 +++
 .../project/LegacyLocalRepositoryManager.java      | 10 ++++
 .../repository/legacy/DefaultWagonManagerTest.java |  4 ++
 .../resolver/DefaultArtifactCollectorTest.java     |  5 ++
 .../repository/metadata/TestMetadataSource.java    |  4 ++
 .../maven/cli/event/DefaultEventSpyContext.java    |  1 +
 .../maven/cli/logging/Slf4jStdoutLogger.java       | 61 ++++++++++++++++++++++
 .../apache/maven/cli/props/MavenProperties.java    |  6 +++
 .../maven/cli/CLIManagerDocumentationTest.java     |  1 +
 .../interpolation/ObjectBasedValueSource.java      |  1 +
 .../interpolation/PrefixedObjectValueSource.java   |  1 +
 .../maven/model/root/DefaultRootLocator.java       |  1 +
 .../model/building/SimpleProblemCollector.java     |  1 +
 .../StringVisitorModelInterpolatorTest.java        |  1 +
 .../java/org/apache/maven/model/InputLocation.java |  2 +
 .../maven/model/io/xpp3/MavenXpp3WriterEx.java     |  4 ++
 .../apache/maven/monitor/logging/DefaultLog.java   | 16 ++++++
 .../maven/plugin/descriptor/MojoDescriptor.java    |  5 ++
 .../apache/maven/plugin/descriptor/Parameter.java  |  3 ++
 .../maven/plugin/descriptor/PluginDescriptor.java  |  2 +
 .../maven/plugin/logging/SystemStreamLog.java      | 16 ++++++
 .../maven/repository/internal/MavenMetadata.java   |  1 +
 .../repository/internal/type/DefaultType.java      |  1 +
 .../internal/util/ConsoleRepositoryListener.java   | 17 ++++++
 .../validation/DefaultSettingsValidatorTest.java   |  1 +
 .../building/DefaultToolchainsBuilderTest.java     |  1 +
 .../cling/invoker/mvn/MavenInvokerRequest.java     |  1 +
 .../invoker/mvnenc/EncryptInvokerRequest.java      |  1 +
 .../cling/invoker/mvnsh/ShellInvokerRequest.java   |  1 +
 .../BuiltinShellCommandRegistryFactory.java        |  1 +
 .../apache/maven/cling/props/MavenProperties.java  |  6 +++
 .../main/java/org/apache/maven/ReactorReader.java  |  3 ++
 .../java/org/apache/maven/RepositoryUtils.java     |  1 +
 .../artifact/factory/DefaultArtifactFactory.java   | 12 +++++
 .../repository/DefaultRepositoryRequest.java       |  8 +++
 .../repository/MavenArtifactRepository.java        | 33 ++++++++++++
 .../repository/layout/DefaultRepositoryLayout.java |  4 ++
 .../metadata/io/DefaultMetadataReader.java         |  3 ++
 .../filter/AbstractScopeArtifactFilter.java        |  1 +
 .../resolver/filter/AndArtifactFilter.java         |  1 +
 .../resolver/filter/ExcludesArtifactFilter.java    |  1 +
 .../resolver/filter/ExclusionSetFilter.java        |  1 +
 .../resolver/filter/IncludesArtifactFilter.java    |  1 +
 .../classrealm/ArtifactClassRealmConstituent.java  |  6 +++
 .../maven/classrealm/DefaultClassRealmManager.java |  5 ++
 .../maven/classrealm/DefaultClassRealmRequest.java |  6 +++
 .../BasedirBeanConfigurationPathTranslator.java    |  1 +
 .../DefaultBeanConfigurationRequest.java           | 12 +++++
 .../internal/DefaultBeanConfigurator.java          |  4 ++
 .../internal/EnhancedConfigurationConverter.java   |  1 +
 .../apache/maven/eventspy/AbstractEventSpy.java    |  3 ++
 .../maven/execution/AbstractExecutionListener.java | 17 ++++++
 .../execution/DefaultMavenExecutionResult.java     | 11 ++++
 .../scope/internal/MojoExecutionScope.java         |  4 ++
 .../extension/internal/CoreExportsProvider.java    |  1 +
 .../maven/graph/DefaultProjectDependencyGraph.java |  4 ++
 .../DefaultRepositorySystemSessionFactory.java     |  1 +
 .../internal/impl/DefaultLifecycleRegistry.java    |  1 +
 .../org/apache/maven/internal/impl/DefaultLog.java |  1 +
 .../apache/maven/internal/impl/DefaultSession.java |  2 +
 .../DefaultConsumerPomArtifactTransformer.java     |  3 ++
 .../maven/lifecycle/DefaultLifecycleExecutor.java  |  6 +++
 .../apache/maven/lifecycle/MavenExecutionPlan.java |  1 +
 .../internal/LifecycleDependencyResolver.java      |  1 +
 .../singlethreaded/SingleThreadedBuilder.java      |  1 +
 .../concurrent/ConcurrentLifecycleStarter.java     |  1 +
 .../plugin/DefaultLifecycleBindingsInjector.java   |  1 +
 .../plugin/CompoundMojoExecutionListener.java      |  3 ++
 .../maven/plugin/DebugConfigurationListener.java   |  2 +
 .../maven/plugin/DefaultExtensionRealmCache.java   |  5 ++
 .../maven/plugin/DefaultPluginArtifactsCache.java  |  6 +++
 .../maven/plugin/DefaultPluginDescriptorCache.java |  4 ++
 .../maven/plugin/DefaultPluginRealmCache.java      |  6 +++
 .../plugin/MavenPluginPrerequisitesChecker.java    |  1 +
 .../plugin/internal/DefaultLegacySupport.java      |  3 ++
 .../plugin/internal/DefaultMavenPluginManager.java |  6 +++
 .../DefaultPluginDependenciesResolver.java         |  3 ++
 .../maven/plugin/internal/MojoLogWrapper.java      |  1 +
 ...lexusContainerDefaultDependenciesValidator.java |  1 +
 .../internal/ValidatingConfigurationListener.java  |  2 +
 .../plugin/prefix/DefaultPluginPrefixRequest.java  | 10 ++++
 .../internal/DefaultPluginPrefixResolver.java      |  1 +
 .../prefix/internal/DefaultPluginPrefixResult.java |  3 ++
 .../version/DefaultPluginVersionRequest.java       | 10 ++++
 .../internal/DefaultPluginVersionResult.java       |  2 +
 .../DefaultDependencyResolutionRequest.java        |  6 +++
 .../project/DefaultDependencyResolutionResult.java |  6 +++
 .../maven/project/DefaultMavenProjectHelper.java   |  5 ++
 .../project/DefaultProjectBuildingHelper.java      |  3 ++
 .../project/DefaultProjectBuildingRequest.java     | 35 +++++++++++++
 .../project/DefaultProjectBuildingResult.java      |  5 ++
 .../DefaultProjectDependenciesResolver.java        |  1 +
 .../maven/project/DefaultProjectRealmCache.java    |  4 ++
 .../apache/maven/project/ProjectModelResolver.java |  3 ++
 .../maven/project/artifact/AttachedArtifact.java   | 21 ++++++++
 .../maven/project/artifact/PluginArtifact.java     |  2 +
 .../maven/project/artifact/ProjectArtifact.java    |  2 +
 .../resolver/MavenChainedWorkspaceReader.java      |  2 +
 .../maven/session/scope/internal/SessionScope.java |  1 +
 .../lifecycle/DelegatingMojoExecutionListener.java |  3 ++
 .../DelegatingProjectExecutionListener.java        |  4 ++
 .../lifecycle/EmptyLifecyclePluginAnalyzer.java    |  1 +
 .../maven/lifecycle/LifecycleExecutorTest.java     |  7 +++
 .../internal/stub/BuildPluginManagerStub.java      |  4 ++
 .../internal/stub/CompletionServiceStub.java       |  4 ++
 .../internal/stub/ExecutionEventCatapultStub.java  |  2 +
 .../internal/stub/LifeCyclePluginAnalyzerStub.java |  1 +
 .../stub/LifecycleExecutionPlanCalculatorStub.java |  4 ++
 .../stub/LifecycleTaskSegmentCalculatorStub.java   |  2 +
 .../internal/stub/PluginPrefixResolverStub.java    |  4 ++
 .../internal/stub/PluginVersionResolverStub.java   |  3 ++
 .../internal/stub/ProjectDependencyGraphStub.java  |  4 ++
 .../plugin/internal/DefaultLegacySupportTest.java  |  1 +
 .../maven/project/EmptyLifecycleExecutor.java      |  6 +++
 .../maven/project/EmptyProjectBuildingHelper.java  |  3 ++
 .../project/LegacyLocalRepositoryManager.java      | 10 ++++
 .../project/harness/Xpp3DomAttributeIterator.java  |  3 ++
 .../maven/project/harness/Xpp3DomNodeIterator.java |  3 ++
 .../project/harness/Xpp3DomPointerFactory.java     |  3 ++
 .../maven/repository/TestRepositoryConnector.java  |  3 ++
 .../repository/TestRepositoryConnectorFactory.java |  2 +
 .../maven/session/scope/SessionScopeProxyTest.java |  3 ++
 .../maven/impl/cache/DefaultRequestCache.java      |  1 +
 .../impl/cache/DefaultRequestCacheFactory.java     |  1 +
 .../apache/maven/impl/di/MojoExecutionScope.java   |  1 +
 .../model/DefaultLifecycleBindingsInjector.java    |  1 +
 .../maven/impl/model/DefaultModelBuilder.java      |  8 +++
 .../impl/model/DefaultModelBuilderResult.java      |  1 +
 .../maven/impl/model/DefaultModelProblem.java      |  2 +
 .../impl/model/rootlocator/DefaultRootLocator.java |  1 +
 .../maven/impl/resolver/DefaultModelResolver.java  |  1 +
 .../apache/maven/impl/resolver/MavenMetadata.java  |  1 +
 .../maven/impl/resolver/type/DefaultType.java      |  1 +
 .../java/org/apache/maven/impl/VersionTest.java    |  1 +
 .../org/apache/maven/slf4j/MavenBaseLogger.java    |  5 ++
 .../apache/maven/slf4j/MavenServiceProvider.java   |  1 +
 .../org/apache/maven/slf4j/MavenSimpleLogger.java  |  1 +
 .../maven/api/plugin/testing/stubs/PluginStub.java |  1 +
 .../org/apache/maven/internal/xml/XmlNodeImpl.java |  2 +
 .../apache/maven/internal/xml/XmlNodeImplTest.java |  1 +
 .../org/apache/maven/it/TunnelingProxyServer.java  |  3 ++
 .../module5/src/test/java/mng/Module5Test.java     |  2 +
 .../src/main/java/jar/CheckMojo.java               |  2 +
 .../src/main/java/jar/RunMojo.java                 |  3 ++
 .../coreit/component/DefaultStatefulSingleton.java |  3 ++
 .../maven/coreits/javaagent/mng5669/Premain.java   |  1 +
 .../maven/plugin/coreit/CheckThreadSafetyMojo.java |  1 +
 .../maven/plugin/coreit/InstallCustomMojo.java     |  1 +
 .../maven/plugin/coreit/ResolveTransitiveMojo.java |  1 +
 .../java/org/apache/maven/plugin/coreit/Bean.java  |  1 +
 .../maven/plugin/coreit/PropertyUtilTest.java      |  1 +
 .../maven/plugin/coreit/ConcreteTestComponent.java |  1 +
 .../plexuslifecycle/DefaultFakeComponent.java      |  1 +
 .../plexus/util/xml/pull/MXSerializer.java         | 25 +++++++++
 .../apache/maven/plugin/coreit/DerivedItMojo.java  |  1 +
 .../maven/plugin/coreit/DefaultComponent.java      |  1 +
 .../apache/maven/plugin/coreit/GenerateMojo.java   |  1 +
 .../main/java/org/apache/maven/it/Verifier.java    |  1 +
 src/mdo/java/InputLocation.java                    |  1 +
 268 files changed, 1196 insertions(+)

diff --git a/api/maven-api-cli/src/main/java/org/apache/maven/api/cli/mvn/MavenOptions.java b/api/maven-api-cli/src/main/java/org/apache/maven/api/cli/mvn/MavenOptions.java
index 2387105a3a..4f692564ea 100644
--- a/api/maven-api-cli/src/main/java/org/apache/maven/api/cli/mvn/MavenOptions.java
+++ b/api/maven-api-cli/src/main/java/org/apache/maven/api/cli/mvn/MavenOptions.java
@@ -229,5 +229,6 @@ public interface MavenOptions extends Options {
      * @return a new MavenOptions instance with interpolated values
      */
     @Nonnull
+    @Override
     MavenOptions interpolate(@Nonnull UnaryOperator<String> callback);
 }
diff --git a/api/maven-api-cli/src/main/java/org/apache/maven/api/cli/mvnenc/EncryptOptions.java b/api/maven-api-cli/src/main/java/org/apache/maven/api/cli/mvnenc/EncryptOptions.java
index 9a7da37502..1c71f2ca02 100644
--- a/api/maven-api-cli/src/main/java/org/apache/maven/api/cli/mvnenc/EncryptOptions.java
+++ b/api/maven-api-cli/src/main/java/org/apache/maven/api/cli/mvnenc/EncryptOptions.java
@@ -64,5 +64,6 @@ public interface EncryptOptions extends Options {
      * @return a new EncryptOptions instance with interpolated values
      */
     @Nonnull
+    @Override
     EncryptOptions interpolate(UnaryOperator<String> callback);
 }
diff --git a/api/maven-api-cli/src/main/java/org/apache/maven/api/cli/mvnsh/ShellOptions.java b/api/maven-api-cli/src/main/java/org/apache/maven/api/cli/mvnsh/ShellOptions.java
index 4e1a63c6d7..81aef61d7a 100644
--- a/api/maven-api-cli/src/main/java/org/apache/maven/api/cli/mvnsh/ShellOptions.java
+++ b/api/maven-api-cli/src/main/java/org/apache/maven/api/cli/mvnsh/ShellOptions.java
@@ -39,5 +39,6 @@ public interface ShellOptions extends Options {
      * @return a new EncryptOptions instance with interpolated values
      */
     @Nonnull
+    @Override
     ShellOptions interpolate(UnaryOperator<String> callback);
 }
diff --git a/api/maven-api-core/src/main/java/org/apache/maven/api/ExtensibleEnums.java b/api/maven-api-core/src/main/java/org/apache/maven/api/ExtensibleEnums.java
index 46a24b9b44..75892c7651 100644
--- a/api/maven-api-core/src/main/java/org/apache/maven/api/ExtensibleEnums.java
+++ b/api/maven-api-core/src/main/java/org/apache/maven/api/ExtensibleEnums.java
@@ -87,6 +87,7 @@ private static class DefaultExtensibleEnum implements ExtensibleEnum {
          *
          * @return the identifier
          */
+        @Override
         public String id() {
             return id;
         }
diff --git a/api/maven-api-core/src/main/java/org/apache/maven/api/Lifecycle.java b/api/maven-api-core/src/main/java/org/apache/maven/api/Lifecycle.java
index 37b3fba043..27cb57d7c4 100644
--- a/api/maven-api-core/src/main/java/org/apache/maven/api/Lifecycle.java
+++ b/api/maven-api-core/src/main/java/org/apache/maven/api/Lifecycle.java
@@ -244,6 +244,7 @@ interface PhasePointer extends Pointer {
          *
          * @return the PROJECT pointer type
          */
+        @Override
         default Type type() {
             return Type.PROJECT;
         }
@@ -262,6 +263,7 @@ interface DependenciesPointer extends Pointer {
          *
          * @return the DEPENDENCIES pointer type
          */
+        @Override
         default Type type() {
             return Type.DEPENDENCIES;
         }
@@ -273,6 +275,7 @@ interface ChildrenPointer extends Pointer {
          *
          * @return the CHILDREN pointer type
          */
+        @Override
         default Type type() {
             return Type.CHILDREN;
         }
diff --git a/api/maven-api-core/src/main/java/org/apache/maven/api/Packaging.java b/api/maven-api-core/src/main/java/org/apache/maven/api/Packaging.java
index 98ca09c872..18437f9c77 100644
--- a/api/maven-api-core/src/main/java/org/apache/maven/api/Packaging.java
+++ b/api/maven-api-core/src/main/java/org/apache/maven/api/Packaging.java
@@ -66,6 +66,7 @@ public interface Packaging extends ExtensibleEnum {
      * The packaging id.
      */
     @Nonnull
+    @Override
     String id();
 
     /**
diff --git a/api/maven-api-core/src/main/java/org/apache/maven/api/Type.java b/api/maven-api-core/src/main/java/org/apache/maven/api/Type.java
index 30d81eabe3..98861483ff 100644
--- a/api/maven-api-core/src/main/java/org/apache/maven/api/Type.java
+++ b/api/maven-api-core/src/main/java/org/apache/maven/api/Type.java
@@ -134,6 +134,7 @@ public interface Type extends ExtensibleEnum {
      * @return the id of this type, never {@code null}.
      */
     @Nonnull
+    @Override
     String id();
 
     /**
diff --git a/api/maven-api-core/src/main/java/org/apache/maven/api/Version.java b/api/maven-api-core/src/main/java/org/apache/maven/api/Version.java
index cba76cac28..6d533ecfb6 100644
--- a/api/maven-api-core/src/main/java/org/apache/maven/api/Version.java
+++ b/api/maven-api-core/src/main/java/org/apache/maven/api/Version.java
@@ -38,5 +38,6 @@ public interface Version extends Comparable<Version> {
      * {@return the string representation of this version}
      */
     @Nonnull
+    @Override
     String toString();
 }
diff --git a/api/maven-api-core/src/main/java/org/apache/maven/api/VersionConstraint.java b/api/maven-api-core/src/main/java/org/apache/maven/api/VersionConstraint.java
index 4d5d08204e..5d5ac0fc4f 100644
--- a/api/maven-api-core/src/main/java/org/apache/maven/api/VersionConstraint.java
+++ b/api/maven-api-core/src/main/java/org/apache/maven/api/VersionConstraint.java
@@ -65,5 +65,6 @@ public interface VersionConstraint {
      * {@return the string representation of this version}
      */
     @Nonnull
+    @Override
     String toString();
 }
diff --git a/api/maven-api-core/src/main/java/org/apache/maven/api/VersionRange.java b/api/maven-api-core/src/main/java/org/apache/maven/api/VersionRange.java
index ca58019dc0..224b5d6f75 100644
--- a/api/maven-api-core/src/main/java/org/apache/maven/api/VersionRange.java
+++ b/api/maven-api-core/src/main/java/org/apache/maven/api/VersionRange.java
@@ -60,6 +60,7 @@ public interface VersionRange {
      * {@return the string representation of this version}
      */
     @Nonnull
+    @Override
     String toString();
 
     /**
diff --git a/api/maven-api-core/src/main/java/org/apache/maven/api/services/ArtifactCoordinatesFactoryRequest.java b/api/maven-api-core/src/main/java/org/apache/maven/api/services/ArtifactCoordinatesFactoryRequest.java
index d754082668..d2c3540f3c 100644
--- a/api/maven-api-core/src/main/java/org/apache/maven/api/services/ArtifactCoordinatesFactoryRequest.java
+++ b/api/maven-api-core/src/main/java/org/apache/maven/api/services/ArtifactCoordinatesFactoryRequest.java
@@ -233,6 +233,7 @@ public String getType() {
                 return type;
             }
 
+            @Override
             public String getCoordinatesString() {
                 return coordinatesString;
             }
diff --git a/api/maven-api-core/src/main/java/org/apache/maven/api/services/BaseRequest.java b/api/maven-api-core/src/main/java/org/apache/maven/api/services/BaseRequest.java
index 6bf2c31b22..b5e338466a 100644
--- a/api/maven-api-core/src/main/java/org/apache/maven/api/services/BaseRequest.java
+++ b/api/maven-api-core/src/main/java/org/apache/maven/api/services/BaseRequest.java
@@ -45,10 +45,12 @@ protected BaseRequest(@Nonnull S session, RequestTrace trace) {
     }
 
     @Nonnull
+    @Override
     public S getSession() {
         return session;
     }
 
+    @Override
     public RequestTrace getTrace() {
         return trace;
     }
diff --git a/api/maven-api-core/src/main/java/org/apache/maven/api/services/DependencyCoordinatesFactoryRequest.java b/api/maven-api-core/src/main/java/org/apache/maven/api/services/DependencyCoordinatesFactoryRequest.java
index 579e9a448c..c0314b2078 100644
--- a/api/maven-api-core/src/main/java/org/apache/maven/api/services/DependencyCoordinatesFactoryRequest.java
+++ b/api/maven-api-core/src/main/java/org/apache/maven/api/services/DependencyCoordinatesFactoryRequest.java
@@ -282,6 +282,7 @@ public String getType() {
                 return type;
             }
 
+            @Override
             public String getCoordinatesString() {
                 return coordinateString;
             }
diff --git a/api/maven-api-core/src/main/java/org/apache/maven/api/services/ModelBuilderResult.java b/api/maven-api-core/src/main/java/org/apache/maven/api/services/ModelBuilderResult.java
index e4bec3a4d5..4b15818cf0 100644
--- a/api/maven-api-core/src/main/java/org/apache/maven/api/services/ModelBuilderResult.java
+++ b/api/maven-api-core/src/main/java/org/apache/maven/api/services/ModelBuilderResult.java
@@ -109,5 +109,6 @@ public interface ModelBuilderResult extends Result<ModelBuilderRequest> {
     /**
      * Creates a human-readable representation of these errors.
      */
+    @Override
     String toString();
 }
diff --git a/api/maven-api-core/src/main/java/org/apache/maven/api/services/xml/XmlReaderRequest.java b/api/maven-api-core/src/main/java/org/apache/maven/api/services/xml/XmlReaderRequest.java
index d261345f70..d6fc50e911 100644
--- a/api/maven-api-core/src/main/java/org/apache/maven/api/services/xml/XmlReaderRequest.java
+++ b/api/maven-api-core/src/main/java/org/apache/maven/api/services/xml/XmlReaderRequest.java
@@ -216,6 +216,7 @@ public InputStream getInputStream() {
                 return inputStream;
             }
 
+            @Override
             public Reader getReader() {
                 return reader;
             }
diff --git a/api/maven-api-model/src/main/java/org/apache/maven/api/model/InputLocation.java b/api/maven-api-model/src/main/java/org/apache/maven/api/model/InputLocation.java
index 60f50addbe..2e65dea793 100644
--- a/api/maven-api-model/src/main/java/org/apache/maven/api/model/InputLocation.java
+++ b/api/maven-api-model/src/main/java/org/apache/maven/api/model/InputLocation.java
@@ -93,6 +93,7 @@ public InputSource getSource() {
         return source;
     }
 
+    @Override
     public InputLocation getLocation(Object key) {
         return locations != null ? locations.get(key) : null;
     }
@@ -108,6 +109,7 @@ public Map<Object, InputLocation> getLocations() {
      * @return InputLocation
      * @since 4.0.0
      */
+    @Override
     public InputLocation getImportedFrom() {
         return importedFrom;
     }
diff --git a/api/maven-api-plugin/src/test/java/org/apache/maven/api/plugin/descriptor/another/ExtendedPluginDescriptorTest.java b/api/maven-api-plugin/src/test/java/org/apache/maven/api/plugin/descriptor/another/ExtendedPluginDescriptorTest.java
index c6b5e9ad67..c318cb815f 100644
--- a/api/maven-api-plugin/src/test/java/org/apache/maven/api/plugin/descriptor/another/ExtendedPluginDescriptorTest.java
+++ b/api/maven-api-plugin/src/test/java/org/apache/maven/api/plugin/descriptor/another/ExtendedPluginDescriptorTest.java
@@ -56,6 +56,7 @@ public Builder additionalField(String additionalField) {
                 return this;
             }
 
+            @Override
             public ExtendedPluginDescriptor build() {
                 return new ExtendedPluginDescriptor(this);
             }
diff --git a/compat/maven-artifact/src/main/java/org/apache/maven/artifact/InvalidArtifactRTException.java b/compat/maven-artifact/src/main/java/org/apache/maven/artifact/InvalidArtifactRTException.java
index 5582e98cd2..63cf7c36c6 100644
--- a/compat/maven-artifact/src/main/java/org/apache/maven/artifact/InvalidArtifactRTException.java
+++ b/compat/maven-artifact/src/main/java/org/apache/maven/artifact/InvalidArtifactRTException.java
@@ -49,6 +49,7 @@ public InvalidArtifactRTException(
         this.baseMessage = message;
     }
 
+    @Override
     public String getMessage() {
         return "For artifact {" + getArtifactKey() + "}: " + getBaseMessage();
     }
diff --git a/compat/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/CyclicDependencyException.java b/compat/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/CyclicDependencyException.java
index a47d6a6851..e04c6b2a1e 100644
--- a/compat/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/CyclicDependencyException.java
+++ b/compat/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/CyclicDependencyException.java
@@ -32,6 +32,7 @@ public CyclicDependencyException(String message, Artifact artifact) {
         this.artifact = artifact;
     }
 
+    @Override
     public Artifact getArtifact() {
         return artifact;
     }
diff --git a/compat/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/ComparableVersion.java b/compat/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/ComparableVersion.java
index 6f84a85bd3..e92e0bb450 100644
--- a/compat/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/ComparableVersion.java
+++ b/compat/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/ComparableVersion.java
@@ -285,6 +285,7 @@ public int hashCode() {
             return value.hashCode();
         }
 
+        @Override
         public String toString() {
             return value.toString();
         }
@@ -415,6 +416,7 @@ public int hashCode() {
             return value.hashCode();
         }
 
+        @Override
         public String toString() {
             return value;
         }
diff --git a/compat/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/DefaultArtifactVersion.java b/compat/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/DefaultArtifactVersion.java
index 0ce0737740..5d2264f245 100644
--- a/compat/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/DefaultArtifactVersion.java
+++ b/compat/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/DefaultArtifactVersion.java
@@ -57,6 +57,7 @@ public boolean equals(Object other) {
         return false;
     }
 
+    @Override
     public int compareTo(ArtifactVersion otherVersion) {
         if (otherVersion instanceof DefaultArtifactVersion defaultArtifactVersion) {
             return this.comparable.compareTo(defaultArtifactVersion.comparable);
@@ -65,26 +66,32 @@ public int compareTo(ArtifactVersion otherVersion) {
         }
     }
 
+    @Override
     public int getMajorVersion() {
         return majorVersion != null ? majorVersion : 0;
     }
 
+    @Override
     public int getMinorVersion() {
         return minorVersion != null ? minorVersion : 0;
     }
 
+    @Override
     public int getIncrementalVersion() {
         return incrementalVersion != null ? incrementalVersion : 0;
     }
 
+    @Override
     public int getBuildNumber() {
         return buildNumber != null ? buildNumber : 0;
     }
 
+    @Override
     public String getQualifier() {
         return qualifier;
     }
 
+    @Override
     public final void parseVersion(String version) {
         comparable = new ComparableVersion(version);
 
diff --git a/compat/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/Restriction.java b/compat/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/Restriction.java
index cd65e3984a..8498ec86f5 100644
--- a/compat/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/Restriction.java
+++ b/compat/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/Restriction.java
@@ -139,6 +139,7 @@ public boolean equals(Object other) {
         }
     }
 
+    @Override
     public String toString() {
         StringBuilder buf = new StringBuilder();
 
diff --git a/compat/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/VersionRange.java b/compat/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/VersionRange.java
index 3f8cd985c5..1869dcc584 100644
--- a/compat/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/VersionRange.java
+++ b/compat/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/VersionRange.java
@@ -419,6 +419,7 @@ public boolean isSelectedVersionKnown(Artifact artifact) throws OverConstrainedV
         return value;
     }
 
+    @Override
     public String toString() {
         if (recommendedVersion != null) {
             return recommendedVersion.toString();
@@ -465,6 +466,7 @@ public boolean hasRestrictions() {
         return !restrictions.isEmpty() && recommendedVersion == null;
     }
 
+    @Override
     public boolean equals(Object obj) {
         if (this == obj) {
             return true;
@@ -477,6 +479,7 @@ public boolean equals(Object obj) {
         }
     }
 
+    @Override
     public int hashCode() {
         int hash = 7;
         hash = 31 * hash + (recommendedVersion == null ? 0 : recommendedVersion.hashCode());
diff --git a/compat/maven-builder-support/src/main/java/org/apache/maven/building/DefaultProblem.java b/compat/maven-builder-support/src/main/java/org/apache/maven/building/DefaultProblem.java
index 19beeb576e..ad5c72e5a2 100644
--- a/compat/maven-builder-support/src/main/java/org/apache/maven/building/DefaultProblem.java
+++ b/compat/maven-builder-support/src/main/java/org/apache/maven/building/DefaultProblem.java
@@ -62,18 +62,22 @@ class DefaultProblem implements Problem {
         this.exception = exception;
     }
 
+    @Override
     public String getSource() {
         return source;
     }
 
+    @Override
     public int getLineNumber() {
         return lineNumber;
     }
 
+    @Override
     public int getColumnNumber() {
         return columnNumber;
     }
 
+    @Override
     public String getLocation() {
         StringBuilder buffer = new StringBuilder(256);
 
@@ -101,10 +105,12 @@ public String getLocation() {
         return buffer.toString();
     }
 
+    @Override
     public Exception getException() {
         return exception;
     }
 
+    @Override
     public String getMessage() {
         String msg;
 
@@ -121,6 +127,7 @@ public String getMessage() {
         return msg;
     }
 
+    @Override
     public Severity getSeverity() {
         return severity;
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/DefaultArtifactFilterManager.java b/compat/maven-compat/src/main/java/org/apache/maven/DefaultArtifactFilterManager.java
index f698d53c65..c7f6590d57 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/DefaultArtifactFilterManager.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/DefaultArtifactFilterManager.java
@@ -62,6 +62,7 @@ private synchronized Set<String> getExcludedArtifacts() {
      *
      * @see org.apache.maven.ArtifactFilterManager#getArtifactFilter()
      */
+    @Override
     public ArtifactFilter getArtifactFilter() {
         Set<String> excludes = new LinkedHashSet<>(getExcludedArtifacts());
 
@@ -77,14 +78,17 @@ public ArtifactFilter getArtifactFilter() {
      *
      * @see org.apache.maven.ArtifactFilterManager#getCoreArtifactFilter()
      */
+    @Override
     public ArtifactFilter getCoreArtifactFilter() {
         return new ExclusionSetFilter(getCoreArtifactExcludes());
     }
 
+    @Override
     public void excludeArtifact(String artifactId) {
         getExcludedArtifacts().add(artifactId);
     }
 
+    @Override
     public Set<String> getCoreArtifactExcludes() {
         Set<String> excludes = new LinkedHashSet<>(coreArtifacts);
 
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/DefaultProjectDependenciesResolver.java b/compat/maven-compat/src/main/java/org/apache/maven/DefaultProjectDependenciesResolver.java
index ce24588292..08d80f5f4e 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/DefaultProjectDependenciesResolver.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/DefaultProjectDependenciesResolver.java
@@ -64,11 +64,13 @@ public DefaultProjectDependenciesResolver(
         this.resolutionErrorHandler = resolutionErrorHandler;
     }
 
+    @Override
     public Set<Artifact> resolve(MavenProject project, Collection<String> scopesToResolve, MavenSession session)
             throws ArtifactResolutionException, ArtifactNotFoundException {
         return resolve(Collections.singleton(project), scopesToResolve, session);
     }
 
+    @Override
     public Set<Artifact> resolve(
             MavenProject project,
             Collection<String> scopesToCollect,
@@ -80,12 +82,14 @@ public Set<Artifact> resolve(
                 mavenProjects, scopesToCollect, scopesToResolve, session, getIgnorableArtifacts(mavenProjects));
     }
 
+    @Override
     public Set<Artifact> resolve(
             Collection<? extends MavenProject> projects, Collection<String> scopesToResolve, MavenSession session)
             throws ArtifactResolutionException, ArtifactNotFoundException {
         return resolveImpl(projects, null, scopesToResolve, session, getIgnorableArtifacts(projects));
     }
 
+    @Override
     public Set<Artifact> resolve(
             MavenProject project,
             Collection<String> scopesToCollect,
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/ArtifactStatus.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/ArtifactStatus.java
index 3a6a2bdf50..a755cacada 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/ArtifactStatus.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/ArtifactStatus.java
@@ -83,6 +83,7 @@ public static ArtifactStatus valueOf(String status) {
         return retVal != null ? retVal : NONE;
     }
 
+    @Override
     public boolean equals(Object o) {
         if (this == o) {
             return true;
@@ -96,14 +97,17 @@ public boolean equals(Object o) {
         return rank == that.rank;
     }
 
+    @Override
     public int hashCode() {
         return rank;
     }
 
+    @Override
     public String toString() {
         return key;
     }
 
+    @Override
     public int compareTo(ArtifactStatus s) {
         return rank - s.rank;
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/deployer/DefaultArtifactDeployer.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/deployer/DefaultArtifactDeployer.java
index e634a254c9..b144349048 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/deployer/DefaultArtifactDeployer.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/deployer/DefaultArtifactDeployer.java
@@ -67,6 +67,7 @@ public class DefaultArtifactDeployer extends AbstractLogEnabled implements Artif
      *             correctly.
      */
     @Deprecated
+    @Override
     public void deploy(
             String basedir,
             String finalName,
@@ -79,6 +80,7 @@ public void deploy(
         deploy(source, artifact, deploymentRepository, localRepository);
     }
 
+    @Override
     public void deploy(
             File source, Artifact artifact, ArtifactRepository deploymentRepository, ArtifactRepository localRepository)
             throws ArtifactDeploymentException {
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/installer/DefaultArtifactInstaller.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/installer/DefaultArtifactInstaller.java
index eda4d2f57f..a343a9a7b8 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/installer/DefaultArtifactInstaller.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/installer/DefaultArtifactInstaller.java
@@ -59,6 +59,7 @@ public class DefaultArtifactInstaller extends AbstractLogEnabled implements Arti
 
     /** @deprecated we want to use the artifact method only, and ensure artifact.file is set correctly. */
     @Deprecated
+    @Override
     public void install(String basedir, String finalName, Artifact artifact, ArtifactRepository localRepository)
             throws ArtifactInstallationException {
         String extension = artifact.getArtifactHandler().getExtension();
@@ -67,6 +68,7 @@ public void install(String basedir, String finalName, Artifact artifact, Artifac
         install(source, artifact, localRepository);
     }
 
+    @Override
     public void install(File source, Artifact artifact, ArtifactRepository localRepository)
             throws ArtifactInstallationException {
         RepositorySystemSession session =
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/manager/DefaultWagonManager.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/manager/DefaultWagonManager.java
index ee2ff7240c..28b912868d 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/manager/DefaultWagonManager.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/manager/DefaultWagonManager.java
@@ -68,6 +68,7 @@ public class DefaultWagonManager extends org.apache.maven.repository.legacy.Defa
     @Inject
     private ArtifactRepositoryFactory artifactRepositoryFactory;
 
+    @Override
     public AuthenticationInfo getAuthenticationInfo(String id) {
         MavenSession session = legacySupport.getSession();
 
@@ -101,6 +102,7 @@ public AuthenticationInfo getAuthenticationInfo(String id) {
         return new AuthenticationInfo();
     }
 
+    @Override
     public ProxyInfo getProxy(String protocol) {
         MavenSession session = legacySupport.getSession();
 
@@ -135,17 +137,20 @@ public ProxyInfo getProxy(String protocol) {
         return null;
     }
 
+    @Override
     public void getArtifact(Artifact artifact, ArtifactRepository repository)
             throws TransferFailedException, ResourceDoesNotExistException {
         getArtifact(artifact, repository, null, false);
     }
 
+    @Override
     public void getArtifact(Artifact artifact, List<ArtifactRepository> remoteRepositories)
             throws TransferFailedException, ResourceDoesNotExistException {
         getArtifact(artifact, remoteRepositories, null, false);
     }
 
     @Deprecated
+    @Override
     public ArtifactRepository getMirrorRepository(ArtifactRepository repository) {
 
         Mirror mirror = mirrorSelector.getMirror(
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/metadata/ArtifactMetadataSource.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/metadata/ArtifactMetadataSource.java
index 771e4962bd..f916588ea3 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/metadata/ArtifactMetadataSource.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/metadata/ArtifactMetadataSource.java
@@ -32,8 +32,10 @@
 @Deprecated
 public interface ArtifactMetadataSource extends org.apache.maven.repository.legacy.metadata.ArtifactMetadataSource {
 
+    @Override
     ResolutionGroup retrieve(MetadataResolutionRequest request) throws ArtifactMetadataRetrievalException;
 
+    @Override
     ResolutionGroup retrieve(
             Artifact artifact, ArtifactRepository localRepository, List<ArtifactRepository> remoteRepositories)
             throws ArtifactMetadataRetrievalException;
@@ -41,10 +43,12 @@ ResolutionGroup retrieve(
     List<ArtifactVersion> retrieveAvailableVersions(MetadataResolutionRequest request)
             throws ArtifactMetadataRetrievalException;
 
+    @Override
     List<ArtifactVersion> retrieveAvailableVersions(
             Artifact artifact, ArtifactRepository localRepository, List<ArtifactRepository> remoteRepositories)
             throws ArtifactMetadataRetrievalException;
 
+    @Override
     List<ArtifactVersion> retrieveAvailableVersionsFromDeploymentRepository(
             Artifact artifact, ArtifactRepository localRepository, ArtifactRepository remoteRepository)
             throws ArtifactMetadataRetrievalException;
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepository.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepository.java
index 15668909e6..c59cd2b5c6 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepository.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepository.java
@@ -113,54 +113,67 @@ public DefaultArtifactRepository(
         this.releases = releases;
     }
 
+    @Override
     public String pathOf(Artifact artifact) {
         return layout.pathOf(artifact);
     }
 
+    @Override
     public String pathOfRemoteRepositoryMetadata(ArtifactMetadata artifactMetadata) {
         return layout.pathOfRemoteRepositoryMetadata(artifactMetadata);
     }
 
+    @Override
     public String pathOfLocalRepositoryMetadata(ArtifactMetadata metadata, ArtifactRepository repository) {
         return layout.pathOfLocalRepositoryMetadata(metadata, repository);
     }
 
+    @Override
     public void setLayout(ArtifactRepositoryLayout layout) {
         this.layout = layout;
     }
 
+    @Override
     public ArtifactRepositoryLayout getLayout() {
         return layout;
     }
 
+    @Override
     public void setSnapshotUpdatePolicy(ArtifactRepositoryPolicy snapshots) {
         this.snapshots = snapshots;
     }
 
+    @Override
     public ArtifactRepositoryPolicy getSnapshots() {
         return snapshots;
     }
 
+    @Override
     public void setReleaseUpdatePolicy(ArtifactRepositoryPolicy releases) {
         this.releases = releases;
     }
 
+    @Override
     public ArtifactRepositoryPolicy getReleases() {
         return releases;
     }
 
+    @Override
     public String getKey() {
         return getId();
     }
 
+    @Override
     public boolean isBlacklisted() {
         return blacklisted;
     }
 
+    @Override
     public void setBlacklisted(boolean blacklisted) {
         this.blacklisted = blacklisted;
     }
 
+    @Override
     public String toString() {
         StringBuilder sb = new StringBuilder(256);
 
@@ -181,6 +194,7 @@ public String toString() {
         return sb.toString();
     }
 
+    @Override
     public Artifact find(Artifact artifact) {
         File artifactFile = new File(getBasedir(), pathOf(artifact));
 
@@ -195,38 +209,47 @@ public Artifact find(Artifact artifact) {
         return artifact;
     }
 
+    @Override
     public List<String> findVersions(Artifact artifact) {
         return Collections.emptyList();
     }
 
+    @Override
     public boolean isProjectAware() {
         return false;
     }
 
+    @Override
     public Authentication getAuthentication() {
         return authentication;
     }
 
+    @Override
     public void setAuthentication(Authentication authentication) {
         this.authentication = authentication;
     }
 
+    @Override
     public Proxy getProxy() {
         return proxy;
     }
 
+    @Override
     public void setProxy(Proxy proxy) {
         this.proxy = proxy;
     }
 
+    @Override
     public boolean isUniqueVersion() {
         return true;
     }
 
+    @Override
     public List<ArtifactRepository> getMirroredRepositories() {
         return mirroredRepositories;
     }
 
+    @Override
     public void setMirroredRepositories(List<ArtifactRepository> mirroredRepositories) {
         if (mirroredRepositories != null) {
             this.mirroredRepositories = Collections.unmodifiableList(mirroredRepositories);
@@ -235,10 +258,12 @@ public void setMirroredRepositories(List<ArtifactRepository> mirroredRepositorie
         }
     }
 
+    @Override
     public boolean isBlocked() {
         return blocked;
     }
 
+    @Override
     public void setBlocked(boolean blocked) {
         this.blocked = blocked;
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java
index 8ddb073dfe..ce348b87c9 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/DefaultArtifactRepositoryFactory.java
@@ -49,21 +49,25 @@ public class DefaultArtifactRepositoryFactory implements ArtifactRepositoryFacto
     @Inject
     private PlexusContainer container;
 
+    @Override
     public ArtifactRepositoryLayout getLayout(String layoutId) throws UnknownRepositoryLayoutException {
         return factory.getLayout(layoutId);
     }
 
+    @Override
     public ArtifactRepository createDeploymentArtifactRepository(
             String id, String url, String layoutId, boolean uniqueVersion) throws UnknownRepositoryLayoutException {
         return injectSession(factory.createDeploymentArtifactRepository(id, url, layoutId, uniqueVersion), false);
     }
 
+    @Override
     public ArtifactRepository createDeploymentArtifactRepository(
             String id, String url, ArtifactRepositoryLayout repositoryLayout, boolean uniqueVersion) {
         return injectSession(
                 factory.createDeploymentArtifactRepository(id, url, repositoryLayout, uniqueVersion), false);
     }
 
+    @Override
     public ArtifactRepository createArtifactRepository(
             String id,
             String url,
@@ -74,6 +78,7 @@ public ArtifactRepository createArtifactRepository(
         return injectSession(factory.createArtifactRepository(id, url, layoutId, snapshots, releases), true);
     }
 
+    @Override
     public ArtifactRepository createArtifactRepository(
             String id,
             String url,
@@ -83,10 +88,12 @@ public ArtifactRepository createArtifactRepository(
         return injectSession(factory.createArtifactRepository(id, url, repositoryLayout, snapshots, releases), true);
     }
 
+    @Override
     public void setGlobalUpdatePolicy(String updatePolicy) {
         factory.setGlobalUpdatePolicy(updatePolicy);
     }
 
+    @Override
     public void setGlobalChecksumPolicy(String checksumPolicy) {
         factory.setGlobalChecksumPolicy(checksumPolicy);
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/LegacyLocalRepositoryManager.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/LegacyLocalRepositoryManager.java
index 5386d44c10..0d36d42f1f 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/LegacyLocalRepositoryManager.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/LegacyLocalRepositoryManager.java
@@ -105,10 +105,12 @@ private LegacyLocalRepositoryManager(ArtifactRepository delegate) {
         realLocalRepo = (layout instanceof DefaultRepositoryLayout) && "local".equals(delegate.getId());
     }
 
+    @Override
     public LocalRepository getRepository() {
         return repo;
     }
 
+    @Override
     public String getPathForLocalArtifact(Artifact artifact) {
         if (realLocalRepo) {
             return delegate.pathOf(RepositoryUtils.toArtifact(artifact.setVersion(artifact.getBaseVersion())));
@@ -116,19 +118,23 @@ public String getPathForLocalArtifact(Artifact artifact) {
         return delegate.pathOf(RepositoryUtils.toArtifact(artifact));
     }
 
+    @Override
     public String getPathForRemoteArtifact(Artifact artifact, RemoteRepository repository, String context) {
         return delegate.pathOf(RepositoryUtils.toArtifact(artifact));
     }
 
+    @Override
     public String getPathForLocalMetadata(Metadata metadata) {
         return delegate.pathOfLocalRepositoryMetadata(new ArtifactMetadataAdapter(metadata), delegate);
     }
 
+    @Override
     public String getPathForRemoteMetadata(Metadata metadata, RemoteRepository repository, String context) {
         return delegate.pathOfLocalRepositoryMetadata(
                 new ArtifactMetadataAdapter(metadata), new ArtifactRepositoryAdapter(repository));
     }
 
+    @Override
     public LocalArtifactResult find(RepositorySystemSession session, LocalArtifactRequest request) {
         String path = getPathForLocalArtifact(request.getArtifact());
         File file = new File(getRepository().getBasedir(), path);
@@ -142,6 +148,7 @@ public LocalArtifactResult find(RepositorySystemSession session, LocalArtifactRe
         return result;
     }
 
+    @Override
     public LocalMetadataResult find(RepositorySystemSession session, LocalMetadataRequest request) {
         Metadata metadata = request.getMetadata();
 
@@ -162,10 +169,12 @@ public LocalMetadataResult find(RepositorySystemSession session, LocalMetadataRe
         return result;
     }
 
+    @Override
     public void add(RepositorySystemSession session, LocalArtifactRegistration request) {
         // noop
     }
 
+    @Override
     public void add(RepositorySystemSession session, LocalMetadataRegistration request) {
         // noop
     }
@@ -178,22 +187,27 @@ static class ArtifactMetadataAdapter implements ArtifactMetadata {
             this.metadata = metadata;
         }
 
+        @Override
         public boolean storedInArtifactVersionDirectory() {
             return !metadata.getVersion().isEmpty();
         }
 
+        @Override
         public boolean storedInGroupDirectory() {
             return metadata.getArtifactId().isEmpty();
         }
 
+        @Override
         public String getGroupId() {
             return nullify(metadata.getGroupId());
         }
 
+        @Override
         public String getArtifactId() {
             return nullify(metadata.getArtifactId());
         }
 
+        @Override
         public String getBaseVersion() {
             return nullify(metadata.getVersion());
         }
@@ -202,14 +216,17 @@ private String nullify(String str) {
             return (str == null || str.isEmpty()) ? null : str;
         }
 
+        @Override
         public Object getKey() {
             return metadata.toString();
         }
 
+        @Override
         public String getRemoteFilename() {
             return metadata.getType();
         }
 
+        @Override
         public String getLocalFilename(ArtifactRepository repository) {
             return insertRepositoryKey(getRemoteFilename(), repository.getKey());
         }
@@ -225,19 +242,23 @@ private String insertRepositoryKey(String filename, String repositoryKey) {
             return result;
         }
 
+        @Override
         public void merge(org.apache.maven.repository.legacy.metadata.ArtifactMetadata metadata) {
             // not used
         }
 
+        @Override
         public void merge(ArtifactMetadata metadata) {
             // not used
         }
 
+        @Override
         public void storeInLocalRepository(ArtifactRepository localRepository, ArtifactRepository remoteRepository)
                 throws RepositoryMetadataStoreException {
             // not used
         }
 
+        @Override
         public String extendedToString() {
             return metadata.toString();
         }
@@ -251,104 +272,134 @@ static class ArtifactRepositoryAdapter implements ArtifactRepository {
             this.repository = repository;
         }
 
+        @Override
         public String pathOf(org.apache.maven.artifact.Artifact artifact) {
             return null;
         }
 
+        @Override
         public String pathOfRemoteRepositoryMetadata(ArtifactMetadata artifactMetadata) {
             return null;
         }
 
+        @Override
         public String pathOfLocalRepositoryMetadata(ArtifactMetadata metadata, ArtifactRepository repository) {
             return null;
         }
 
+        @Override
         public String getUrl() {
             return repository.getUrl();
         }
 
+        @Override
         public void setUrl(String url) {}
 
+        @Override
         public String getBasedir() {
             return null;
         }
 
+        @Override
         public String getProtocol() {
             return repository.getProtocol();
         }
 
+        @Override
         public String getId() {
             return repository.getId();
         }
 
+        @Override
         public void setId(String id) {}
 
+        @Override
         public ArtifactRepositoryPolicy getSnapshots() {
             return null;
         }
 
+        @Override
         public void setSnapshotUpdatePolicy(ArtifactRepositoryPolicy policy) {}
 
+        @Override
         public ArtifactRepositoryPolicy getReleases() {
             return null;
         }
 
+        @Override
         public void setReleaseUpdatePolicy(ArtifactRepositoryPolicy policy) {}
 
+        @Override
         public ArtifactRepositoryLayout getLayout() {
             return null;
         }
 
+        @Override
         public void setLayout(ArtifactRepositoryLayout layout) {}
 
+        @Override
         public String getKey() {
             return getId();
         }
 
+        @Override
         public boolean isUniqueVersion() {
             return true;
         }
 
+        @Override
         public boolean isBlacklisted() {
             return false;
         }
 
+        @Override
         public void setBlacklisted(boolean blackListed) {}
 
+        @Override
         public org.apache.maven.artifact.Artifact find(org.apache.maven.artifact.Artifact artifact) {
             return null;
         }
 
+        @Override
         public List<String> findVersions(org.apache.maven.artifact.Artifact artifact) {
             return Collections.emptyList();
         }
 
+        @Override
         public boolean isProjectAware() {
             return false;
         }
 
+        @Override
         public void setAuthentication(Authentication authentication) {}
 
+        @Override
         public Authentication getAuthentication() {
             return null;
         }
 
+        @Override
         public void setProxy(Proxy proxy) {}
 
+        @Override
         public Proxy getProxy() {
             return null;
         }
 
+        @Override
         public List<ArtifactRepository> getMirroredRepositories() {
             return Collections.emptyList();
         }
 
+        @Override
         public void setMirroredRepositories(List<ArtifactRepository> mirroredRepositories) {}
 
+        @Override
         public boolean isBlocked() {
             return false;
         }
 
+        @Override
         public void setBlocked(boolean blocked) {}
     }
 }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/layout/FlatRepositoryLayout.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/layout/FlatRepositoryLayout.java
index 509624b4fe..465dd45cac 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/layout/FlatRepositoryLayout.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/layout/FlatRepositoryLayout.java
@@ -38,10 +38,12 @@ public class FlatRepositoryLayout implements ArtifactRepositoryLayout {
 
     private static final char GROUP_SEPARATOR = '.';
 
+    @Override
     public String getId() {
         return "flat";
     }
 
+    @Override
     public String pathOf(Artifact artifact) {
         ArtifactHandler artifactHandler = artifact.getArtifactHandler();
 
@@ -61,6 +63,7 @@ public String pathOf(Artifact artifact) {
         return path.toString();
     }
 
+    @Override
     public String pathOfLocalRepositoryMetadata(ArtifactMetadata metadata, ArtifactRepository repository) {
         return pathOfRepositoryMetadata(metadata.getLocalFilename(repository));
     }
@@ -73,6 +76,7 @@ private String pathOfRepositoryMetadata(String filename) {
         return path.toString();
     }
 
+    @Override
     public String pathOfRemoteRepositoryMetadata(ArtifactMetadata metadata) {
         return pathOfRepositoryMetadata(metadata.getRemoteFilename());
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/AbstractRepositoryMetadata.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/AbstractRepositoryMetadata.java
index 0d278f7cb4..c9c7d83c56 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/AbstractRepositoryMetadata.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/AbstractRepositoryMetadata.java
@@ -47,14 +47,17 @@ protected AbstractRepositoryMetadata(Metadata metadata) {
         this.metadata = metadata;
     }
 
+    @Override
     public String getRemoteFilename() {
         return "maven-metadata.xml";
     }
 
+    @Override
     public String getLocalFilename(ArtifactRepository repository) {
         return "maven-metadata-" + repository.getKey() + ".xml";
     }
 
+    @Override
     public void storeInLocalRepository(ArtifactRepository localRepository, ArtifactRepository remoteRepository)
             throws RepositoryMetadataStoreException {
         try {
@@ -117,6 +120,7 @@ protected void updateRepositoryMetadata(ArtifactRepository localRepository, Arti
         }
     }
 
+    @Override
     public String toString() {
         return "repository metadata for: '" + getKey() + "'";
     }
@@ -136,14 +140,17 @@ protected static Versioning createVersioning(Snapshot snapshot) {
         return versioning;
     }
 
+    @Override
     public void setMetadata(Metadata metadata) {
         this.metadata = metadata;
     }
 
+    @Override
     public Metadata getMetadata() {
         return metadata;
     }
 
+    @Override
     public void merge(org.apache.maven.repository.legacy.metadata.ArtifactMetadata metadata) {
         // TODO not sure that it should assume this, maybe the calls to addMetadata should pre-merge, then artifact
         // replaces?
@@ -151,6 +158,7 @@ public void merge(org.apache.maven.repository.legacy.metadata.ArtifactMetadata m
         this.metadata.merge(repoMetadata.getMetadata());
     }
 
+    @Override
     public void merge(ArtifactMetadata metadata) {
         // TODO not sure that it should assume this, maybe the calls to addMetadata should pre-merge, then artifact
         // replaces?
@@ -158,6 +166,7 @@ public void merge(ArtifactMetadata metadata) {
         this.metadata.merge(repoMetadata.getMetadata());
     }
 
+    @Override
     public String extendedToString() {
         StringBuilder buffer = new StringBuilder(256);
 
@@ -169,10 +178,12 @@ public String extendedToString() {
         return buffer.toString();
     }
 
+    @Override
     public int getNature() {
         return RELEASE;
     }
 
+    @Override
     public ArtifactRepositoryPolicy getPolicy(ArtifactRepository repository) {
         int nature = getNature();
         if ((nature & RepositoryMetadata.RELEASE_OR_SNAPSHOT) == RepositoryMetadata.RELEASE_OR_SNAPSHOT) {
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/ArtifactRepositoryMetadata.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/ArtifactRepositoryMetadata.java
index 3038cc1eb6..036c201e71 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/ArtifactRepositoryMetadata.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/ArtifactRepositoryMetadata.java
@@ -42,36 +42,44 @@ public ArtifactRepositoryMetadata(Artifact artifact, Versioning versioning) {
         this.artifact = artifact;
     }
 
+    @Override
     public boolean storedInGroupDirectory() {
         return false;
     }
 
+    @Override
     public boolean storedInArtifactVersionDirectory() {
         return false;
     }
 
+    @Override
     public String getGroupId() {
         return artifact.getGroupId();
     }
 
+    @Override
     public String getArtifactId() {
         return artifact.getArtifactId();
     }
 
+    @Override
     public String getBaseVersion() {
         // Don't want the artifact's version in here, as this is stored in the directory above that
         return null;
     }
 
+    @Override
     public Object getKey() {
         return "artifact " + artifact.getGroupId() + ":" + artifact.getArtifactId();
     }
 
+    @Override
     public boolean isSnapshot() {
         // Don't consider the artifact's version in here, as this is stored in the directory above that
         return false;
     }
 
+    @Override
     public int getNature() {
         if (artifact.getVersion() != null) {
             return artifact.isSnapshot() ? SNAPSHOT : RELEASE;
@@ -93,10 +101,12 @@ private boolean isSnapshot(ArtifactVersion version) {
         return version != null && ArtifactUtils.isSnapshot(version.getQualifier());
     }
 
+    @Override
     public ArtifactRepository getRepository() {
         return null;
     }
 
+    @Override
     public void setRepository(ArtifactRepository remoteRepository) {
         /*
          * NOTE: Metadata at the g:a level contains a collection of available versions. After merging, we can't tell
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/DefaultRepositoryMetadataManager.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/DefaultRepositoryMetadataManager.java
index d711fc4ece..a7d052455a 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/DefaultRepositoryMetadataManager.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/DefaultRepositoryMetadataManager.java
@@ -59,6 +59,7 @@ public class DefaultRepositoryMetadataManager extends AbstractLogEnabled impleme
     @Inject
     private UpdateCheckManager updateCheckManager;
 
+    @Override
     public void resolve(
             RepositoryMetadata metadata,
             List<ArtifactRepository> remoteRepositories,
@@ -70,6 +71,7 @@ public void resolve(
         resolve(metadata, request);
     }
 
+    @Override
     public void resolve(RepositoryMetadata metadata, RepositoryRequest request)
             throws RepositoryMetadataResolutionException {
         ArtifactRepository localRepo = request.getLocalRepository();
@@ -321,6 +323,7 @@ private void fixTimestamp(File metadataFile, Metadata metadata, Metadata referen
         }
     }
 
+    @Override
     public void resolveAlways(
             RepositoryMetadata metadata, ArtifactRepository localRepository, ArtifactRepository remoteRepository)
             throws RepositoryMetadataResolutionException {
@@ -378,6 +381,7 @@ private File getArtifactMetadataFromDeploymentRepository(
         return file;
     }
 
+    @Override
     public void deploy(
             ArtifactMetadata metadata, ArtifactRepository localRepository, ArtifactRepository deploymentRepository)
             throws RepositoryMetadataDeploymentException {
@@ -420,6 +424,7 @@ public void deploy(
         }
     }
 
+    @Override
     public void install(ArtifactMetadata metadata, ArtifactRepository localRepository)
             throws RepositoryMetadataInstallationException {
         try {
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/GroupRepositoryMetadata.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/GroupRepositoryMetadata.java
index a7c4515c6b..884649dc24 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/GroupRepositoryMetadata.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/GroupRepositoryMetadata.java
@@ -36,22 +36,27 @@ public GroupRepositoryMetadata(String groupId) {
         this.groupId = groupId;
     }
 
+    @Override
     public boolean storedInGroupDirectory() {
         return true;
     }
 
+    @Override
     public boolean storedInArtifactVersionDirectory() {
         return false;
     }
 
+    @Override
     public String getGroupId() {
         return groupId;
     }
 
+    @Override
     public String getArtifactId() {
         return null;
     }
 
+    @Override
     public String getBaseVersion() {
         return null;
     }
@@ -79,18 +84,22 @@ public void addPluginMapping(String goalPrefix, String artifactId, String name)
         }
     }
 
+    @Override
     public Object getKey() {
         return groupId;
     }
 
+    @Override
     public boolean isSnapshot() {
         return false;
     }
 
+    @Override
     public ArtifactRepository getRepository() {
         return null;
     }
 
+    @Override
     public void setRepository(ArtifactRepository remoteRepository) {
         // intentionally blank
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/MetadataBridge.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/MetadataBridge.java
index b9f677f3c7..acdccd6e14 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/MetadataBridge.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/MetadataBridge.java
@@ -48,6 +48,7 @@ public MetadataBridge(ArtifactMetadata metadata) {
         this.metadata = metadata;
     }
 
+    @Override
     public void merge(File current, File result) throws RepositoryException {
         try {
             if (current.exists()) {
@@ -62,22 +63,27 @@ public void merge(File current, File result) throws RepositoryException {
         }
     }
 
+    @Override
     public boolean isMerged() {
         return merged;
     }
 
+    @Override
     public String getGroupId() {
         return emptify(metadata.getGroupId());
     }
 
+    @Override
     public String getArtifactId() {
         return metadata.storedInGroupDirectory() ? "" : emptify(metadata.getArtifactId());
     }
 
+    @Override
     public String getVersion() {
         return metadata.storedInArtifactVersionDirectory() ? emptify(metadata.getBaseVersion()) : "";
     }
 
+    @Override
     public String getType() {
         return metadata.getRemoteFilename();
     }
@@ -86,10 +92,12 @@ private String emptify(String string) {
         return (string != null) ? string : "";
     }
 
+    @Override
     public File getFile() {
         return null;
     }
 
+    @Override
     public MetadataBridge setFile(File file) {
         return this;
     }
@@ -99,6 +107,7 @@ public Path getPath() {
         return null;
     }
 
+    @Override
     public Nature getNature() {
         if (metadata instanceof RepositoryMetadata repositoryMetadata) {
             return switch (repositoryMetadata.getNature()) {
@@ -111,6 +120,7 @@ public Nature getNature() {
         }
     }
 
+    @Override
     public Map<String, String> getProperties() {
         return Collections.emptyMap();
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/SnapshotArtifactRepositoryMetadata.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/SnapshotArtifactRepositoryMetadata.java
index ca1c1696f1..45914e8ba0 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/SnapshotArtifactRepositoryMetadata.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/repository/metadata/SnapshotArtifactRepositoryMetadata.java
@@ -40,42 +40,52 @@ public SnapshotArtifactRepositoryMetadata(Artifact artifact, Snapshot snapshot)
         this.artifact = artifact;
     }
 
+    @Override
     public boolean storedInGroupDirectory() {
         return false;
     }
 
+    @Override
     public boolean storedInArtifactVersionDirectory() {
         return true;
     }
 
+    @Override
     public String getGroupId() {
         return artifact.getGroupId();
     }
 
+    @Override
     public String getArtifactId() {
         return artifact.getArtifactId();
     }
 
+    @Override
     public String getBaseVersion() {
         return artifact.getBaseVersion();
     }
 
+    @Override
     public Object getKey() {
         return "snapshot " + artifact.getGroupId() + ":" + artifact.getArtifactId() + ":" + artifact.getBaseVersion();
     }
 
+    @Override
     public boolean isSnapshot() {
         return artifact.isSnapshot();
     }
 
+    @Override
     public int getNature() {
         return isSnapshot() ? SNAPSHOT : RELEASE;
     }
 
+    @Override
     public ArtifactRepository getRepository() {
         return artifact.getRepository();
     }
 
+    @Override
     public void setRepository(ArtifactRepository remoteRepository) {
         artifact.setRepository(remoteRepository);
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/ArtifactResolutionRequest.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/ArtifactResolutionRequest.java
index 6bd018e7a5..ec86b40a06 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/ArtifactResolutionRequest.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/ArtifactResolutionRequest.java
@@ -107,20 +107,24 @@ public Set<Artifact> getArtifactDependencies() {
         return artifactDependencies;
     }
 
+    @Override
     public ArtifactRepository getLocalRepository() {
         return localRepository;
     }
 
+    @Override
     public ArtifactResolutionRequest setLocalRepository(ArtifactRepository localRepository) {
         this.localRepository = localRepository;
 
         return this;
     }
 
+    @Override
     public List<ArtifactRepository> getRemoteRepositories() {
         return remoteRepositories;
     }
 
+    @Override
     public ArtifactResolutionRequest setRemoteRepositories(List<ArtifactRepository> remoteRepositories) {
         this.remoteRepositories = remoteRepositories;
 
@@ -206,6 +210,7 @@ public boolean isResolveTransitively() {
         return resolveTransitively;
     }
 
+    @Override
     public String toString() {
         StringBuilder sb = new StringBuilder()
                 .append("REQUEST: ")
@@ -224,20 +229,24 @@ public String toString() {
         return sb.toString();
     }
 
+    @Override
     public boolean isOffline() {
         return offline;
     }
 
+    @Override
     public ArtifactResolutionRequest setOffline(boolean offline) {
         this.offline = offline;
 
         return this;
     }
 
+    @Override
     public boolean isForceUpdate() {
         return forceUpdate;
     }
 
+    @Override
     public ArtifactResolutionRequest setForceUpdate(boolean forceUpdate) {
         this.forceUpdate = forceUpdate;
 
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/ArtifactResolutionResult.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/ArtifactResolutionResult.java
index c530287001..be3c565fc0 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/ArtifactResolutionResult.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/ArtifactResolutionResult.java
@@ -308,6 +308,7 @@ private <T> List<T> initList(final List<T> l) {
         return l;
     }
 
+    @Override
     public String toString() {
         StringBuilder sb = new StringBuilder();
 
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/DebugResolutionListener.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/DebugResolutionListener.java
index 70191b2cb6..708ee91b14 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/DebugResolutionListener.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/DebugResolutionListener.java
@@ -42,20 +42,25 @@ public DebugResolutionListener(Logger logger) {
         this.logger = logger;
     }
 
+    @Override
     public void testArtifact(Artifact node) {}
 
+    @Override
     public void startProcessChildren(Artifact artifact) {
         indent += "  ";
     }
 
+    @Override
     public void endProcessChildren(Artifact artifact) {
         indent = indent.substring(2);
     }
 
+    @Override
     public void includeArtifact(Artifact artifact) {
         logger.debug(indent + artifact + " (selected for " + artifact.getScope() + ")");
     }
 
+    @Override
     public void omitForNearer(Artifact omitted, Artifact kept) {
         String omittedVersion = omitted.getVersion();
         String keptVersion = kept.getVersion();
@@ -65,10 +70,12 @@ public void omitForNearer(Artifact omitted, Artifact kept) {
         }
     }
 
+    @Override
     public void omitForCycle(Artifact omitted) {
         logger.debug(indent + omitted + " (removed - causes a cycle in the graph)");
     }
 
+    @Override
     public void updateScopeCurrentPom(Artifact artifact, String ignoredScope) {
         logger.debug(indent + artifact + " (not setting artifactScope to: " + ignoredScope + "; local artifactScope "
                 + artifact.getScope() + " wins)");
@@ -82,15 +89,18 @@ public void updateScopeCurrentPom(Artifact artifact, String ignoredScope) {
         }
     }
 
+    @Override
     public void updateScope(Artifact artifact, String scope) {
         logger.debug(indent + artifact + " (setting artifactScope to: " + scope + ")");
     }
 
+    @Override
     public void selectVersionFromRange(Artifact artifact) {
         logger.debug(indent + artifact + " (setting version to: " + artifact.getVersion() + " from range: "
                 + artifact.getVersionRange() + ")");
     }
 
+    @Override
     public void restrictRange(Artifact artifact, Artifact replacement, VersionRange newRange) {
         logger.debug(indent + artifact + " (range restricted from: " + artifact.getVersionRange() + " and: "
                 + replacement.getVersionRange() + " to: " + newRange + " )");
@@ -102,6 +112,7 @@ public void restrictRange(Artifact artifact, Artifact replacement, VersionRange
      * (and more information) is needed to be able to determine when and if the version and/or artifactScope changes.
      * See the two added methods, manageArtifactVersion and manageArtifactScope.
      */
+    @Override
     public void manageArtifact(Artifact artifact, Artifact replacement) {
         String msg = indent + artifact;
         msg += " (";
@@ -115,6 +126,7 @@ public void manageArtifact(Artifact artifact, Artifact replacement) {
         logger.debug(msg);
     }
 
+    @Override
     public void manageArtifactVersion(Artifact artifact, Artifact replacement) {
         // only show msg if a change is actually taking place
         if (!replacement.getVersion().equals(artifact.getVersion())) {
@@ -123,6 +135,7 @@ public void manageArtifactVersion(Artifact artifact, Artifact replacement) {
         }
     }
 
+    @Override
     public void manageArtifactScope(Artifact artifact, Artifact replacement) {
         // only show msg if a change is actually taking place
         if (!replacement.getScope().equals(artifact.getScope())) {
@@ -131,6 +144,7 @@ public void manageArtifactScope(Artifact artifact, Artifact replacement) {
         }
     }
 
+    @Override
     public void manageArtifactSystemPath(Artifact artifact, Artifact replacement) {
         // only show msg if a change is actually taking place
         if (!replacement.getScope().equals(artifact.getScope())) {
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java
index d802d46c50..68ad69a6d2 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java
@@ -128,6 +128,7 @@ private void injectSession2(ArtifactResolutionRequest request, MavenSession sess
         }
     }
 
+    @Override
     public void resolve(
             Artifact artifact,
             List<ArtifactRepository> remoteRepositories,
@@ -137,6 +138,7 @@ public void resolve(
         resolve(artifact, remoteRepositories, getSession(localRepository));
     }
 
+    @Override
     public void resolveAlways(
             Artifact artifact, List<ArtifactRepository> remoteRepositories, ArtifactRepository localRepository)
             throws ArtifactResolutionException, ArtifactNotFoundException {
@@ -217,6 +219,7 @@ private void resolve(
         }
     }
 
+    @Override
     public ArtifactResolutionResult resolveTransitively(
             Set<Artifact> artifacts,
             Artifact originatingArtifact,
@@ -235,6 +238,7 @@ public ArtifactResolutionResult resolveTransitively(
                 filter);
     }
 
+    @Override
     public ArtifactResolutionResult resolveTransitively(
             Set<Artifact> artifacts,
             Artifact originatingArtifact,
@@ -247,6 +251,7 @@ public ArtifactResolutionResult resolveTransitively(
                 artifacts, originatingArtifact, managedVersions, localRepository, remoteRepositories, source, null);
     }
 
+    @Override
     public ArtifactResolutionResult resolveTransitively(
             Set<Artifact> artifacts,
             Artifact originatingArtifact,
@@ -267,6 +272,7 @@ public ArtifactResolutionResult resolveTransitively(
                 null);
     }
 
+    @Override
     public ArtifactResolutionResult resolveTransitively(
             Set<Artifact> artifacts,
             Artifact originatingArtifact,
@@ -277,6 +283,7 @@ public ArtifactResolutionResult resolveTransitively(
         return resolveTransitively(artifacts, originatingArtifact, localRepository, remoteRepositories, source, null);
     }
 
+    @Override
     public ArtifactResolutionResult resolveTransitively(
             Set<Artifact> artifacts,
             Artifact originatingArtifact,
@@ -296,6 +303,7 @@ public ArtifactResolutionResult resolveTransitively(
                 listeners);
     }
 
+    @Override
     @SuppressWarnings("checkstyle:parameternumber")
     public ArtifactResolutionResult resolveTransitively(
             Set<Artifact> artifacts,
@@ -365,6 +373,7 @@ public ArtifactResolutionResult resolveWithExceptions(ArtifactResolutionRequest
     //
     // ------------------------------------------------------------------------
 
+    @Override
     @SuppressWarnings("checkstyle:methodlength")
     public ArtifactResolutionResult resolve(ArtifactResolutionRequest request) {
         Artifact rootArtifact = request.getArtifact();
@@ -523,6 +532,7 @@ public ArtifactResolutionResult resolve(ArtifactResolutionRequest request) {
         return result;
     }
 
+    @Override
     public void resolve(
             Artifact artifact, List<ArtifactRepository> remoteRepositories, ArtifactRepository localRepository)
             throws ArtifactResolutionException, ArtifactNotFoundException {
@@ -540,6 +550,7 @@ static final class DaemonThreadCreator implements ThreadFactory {
 
         static final AtomicInteger THREAD_NUMBER = new AtomicInteger(1);
 
+        @Override
         public Thread newThread(Runnable r) {
             Thread newThread = new Thread(GROUP, r, "resolver-" + THREAD_NUMBER.getAndIncrement());
             newThread.setDaemon(true);
@@ -577,6 +588,7 @@ private class ResolveTask implements Runnable {
             this.result = result;
         }
 
+        @Override
         public void run() {
             ClassLoader old = Thread.currentThread().getContextClassLoader();
             try {
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/DefaultResolutionErrorHandler.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/DefaultResolutionErrorHandler.java
index d2311e737f..768edbcec5 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/DefaultResolutionErrorHandler.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/DefaultResolutionErrorHandler.java
@@ -32,6 +32,7 @@
 @Deprecated
 public class DefaultResolutionErrorHandler implements ResolutionErrorHandler {
 
+    @Override
     public void throwErrors(ArtifactResolutionRequest request, ArtifactResolutionResult result)
             throws ArtifactResolutionException {
         // Metadata cannot be found
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/WarningResolutionListener.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/WarningResolutionListener.java
index ddfd5686a6..8c7fd7b670 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/WarningResolutionListener.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/WarningResolutionListener.java
@@ -34,25 +34,36 @@ public WarningResolutionListener(Logger logger) {
         this.logger = logger;
     }
 
+    @Override
     public void testArtifact(Artifact node) {}
 
+    @Override
     public void startProcessChildren(Artifact artifact) {}
 
+    @Override
     public void endProcessChildren(Artifact artifact) {}
 
+    @Override
     public void includeArtifact(Artifact artifact) {}
 
+    @Override
     public void omitForNearer(Artifact omitted, Artifact kept) {}
 
+    @Override
     public void omitForCycle(Artifact omitted) {}
 
+    @Override
     public void updateScopeCurrentPom(Artifact artifact, String scope) {}
 
+    @Override
     public void updateScope(Artifact artifact, String scope) {}
 
+    @Override
     public void manageArtifact(Artifact artifact, Artifact replacement) {}
 
+    @Override
     public void selectVersionFromRange(Artifact artifact) {}
 
+    @Override
     public void restrictRange(Artifact artifact, Artifact replacement, VersionRange newRange) {}
 }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/filter/InversionArtifactFilter.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/filter/InversionArtifactFilter.java
index cadc5a9c79..d8cadea362 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/filter/InversionArtifactFilter.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/filter/InversionArtifactFilter.java
@@ -31,6 +31,7 @@ public InversionArtifactFilter(ArtifactFilter toInvert) {
         this.toInvert = toInvert;
     }
 
+    @Override
     public boolean include(Artifact artifact) {
         return !toInvert.include(artifact);
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/filter/OrArtifactFilter.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/filter/OrArtifactFilter.java
index 4d66946ac8..0f7c2215a4 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/filter/OrArtifactFilter.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/filter/OrArtifactFilter.java
@@ -41,6 +41,7 @@ public OrArtifactFilter(Collection<ArtifactFilter> filters) {
         this.filters = new LinkedHashSet<>(filters);
     }
 
+    @Override
     public boolean include(Artifact artifact) {
         for (ArtifactFilter filter : filters) {
             if (filter.include(artifact)) {
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/filter/TypeArtifactFilter.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/filter/TypeArtifactFilter.java
index b5bbea55c8..bea3ab6b46 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/filter/TypeArtifactFilter.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/resolver/filter/TypeArtifactFilter.java
@@ -29,6 +29,7 @@ public TypeArtifactFilter(String type) {
         this.type = type;
     }
 
+    @Override
     public boolean include(Artifact artifact) {
         return type.equals(artifact.getType());
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/artifact/versioning/ManagedVersionMap.java b/compat/maven-compat/src/main/java/org/apache/maven/artifact/versioning/ManagedVersionMap.java
index 9e6b78eebd..7f02150402 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/artifact/versioning/ManagedVersionMap.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/artifact/versioning/ManagedVersionMap.java
@@ -36,6 +36,7 @@ public ManagedVersionMap(Map<String, Artifact> map) {
         }
     }
 
+    @Override
     public String toString() {
         StringBuilder buffer = new StringBuilder("ManagedVersionMap (" + size() + " entries)\n");
         Iterator<String> iter = keySet().iterator();
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/execution/DefaultRuntimeInformation.java b/compat/maven-compat/src/main/java/org/apache/maven/execution/DefaultRuntimeInformation.java
index 40e3942e3f..3a1263f541 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/execution/DefaultRuntimeInformation.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/execution/DefaultRuntimeInformation.java
@@ -41,10 +41,12 @@ public class DefaultRuntimeInformation implements RuntimeInformation, Initializa
 
     private ArtifactVersion applicationVersion;
 
+    @Override
     public ArtifactVersion getApplicationVersion() {
         return applicationVersion;
     }
 
+    @Override
     public void initialize() throws InitializationException {
         String mavenVersion = rtInfo.getMavenVersion();
 
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/plugin/internal/DefaultPluginManager.java b/compat/maven-compat/src/main/java/org/apache/maven/plugin/internal/DefaultPluginManager.java
index 7a60717df6..fe4891cd2e 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/plugin/internal/DefaultPluginManager.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/plugin/internal/DefaultPluginManager.java
@@ -87,12 +87,14 @@ public DefaultPluginManager(
         this.legacySupport = legacySupport;
     }
 
+    @Override
     public void executeMojo(MavenProject project, MojoExecution execution, MavenSession session)
             throws MojoExecutionException, ArtifactResolutionException, MojoFailureException, ArtifactNotFoundException,
                     InvalidDependencyVersionException, PluginManagerException, PluginConfigurationException {
         throw new UnsupportedOperationException();
     }
 
+    @Override
     public Object getPluginComponent(Plugin plugin, String role, String roleHint)
             throws PluginManagerException, ComponentLookupException {
         MavenSession session = legacySupport.getSession();
@@ -117,6 +119,7 @@ public Object getPluginComponent(Plugin plugin, String role, String roleHint)
         }
     }
 
+    @Override
     public Map<String, Object> getPluginComponents(Plugin plugin, String role)
             throws ComponentLookupException, PluginManagerException {
         MavenSession session = legacySupport.getSession();
@@ -141,6 +144,7 @@ public Map<String, Object> getPluginComponents(Plugin plugin, String role)
         }
     }
 
+    @Override
     public Plugin getPluginDefinitionForPrefix(String prefix, MavenSession session, MavenProject project) {
         PluginPrefixRequest request = new DefaultPluginPrefixRequest(prefix, session);
         request.setPom(project.getModel());
@@ -158,6 +162,7 @@ public Plugin getPluginDefinitionForPrefix(String prefix, MavenSession session,
         }
     }
 
+    @Override
     public PluginDescriptor getPluginDescriptorForPrefix(String prefix) {
         MavenSession session = legacySupport.getSession();
 
@@ -176,6 +181,7 @@ public PluginDescriptor getPluginDescriptorForPrefix(String prefix) {
         }
     }
 
+    @Override
     public PluginDescriptor loadPluginDescriptor(Plugin plugin, MavenProject project, MavenSession session)
             throws ArtifactResolutionException, PluginVersionResolutionException, ArtifactNotFoundException,
                     InvalidVersionSpecificationException, InvalidPluginException, PluginManagerException,
@@ -183,6 +189,7 @@ public PluginDescriptor loadPluginDescriptor(Plugin plugin, MavenProject project
         return verifyPlugin(plugin, project, session.getSettings(), session.getLocalRepository());
     }
 
+    @Override
     public PluginDescriptor loadPluginFully(Plugin plugin, MavenProject project, MavenSession session)
             throws ArtifactResolutionException, PluginVersionResolutionException, ArtifactNotFoundException,
                     InvalidVersionSpecificationException, InvalidPluginException, PluginManagerException,
@@ -198,6 +205,7 @@ public PluginDescriptor loadPluginFully(Plugin plugin, MavenProject project, Mav
         return pluginDescriptor;
     }
 
+    @Override
     public PluginDescriptor verifyPlugin(
             Plugin plugin, MavenProject project, Settings settings, ArtifactRepository localRepository)
             throws ArtifactResolutionException, PluginVersionResolutionException, ArtifactNotFoundException,
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/profiles/DefaultProfileManager.java b/compat/maven-compat/src/main/java/org/apache/maven/profiles/DefaultProfileManager.java
index 6727261059..6960d8dded 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/profiles/DefaultProfileManager.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/profiles/DefaultProfileManager.java
@@ -83,10 +83,12 @@ public DefaultProfileManager(PlexusContainer container, Properties props) {
         this.requestProperties = props;
     }
 
+    @Override
     public Properties getRequestProperties() {
         return requestProperties;
     }
 
+    @Override
     public Map<String, Profile> getProfilesById() {
         return profilesById;
     }
@@ -94,6 +96,7 @@ public Map<String, Profile> getProfilesById() {
     /* (non-Javadoc)
      * @see org.apache.maven.profiles.ProfileManager#addProfile(org.apache.maven.model.Profile)
      */
+    @Override
     public void addProfile(Profile profile) {
         String profileId = profile.getId();
 
@@ -115,6 +118,7 @@ public void addProfile(Profile profile) {
     /* (non-Javadoc)
      * @see org.apache.maven.profiles.ProfileManager#explicitlyActivate(java.lang.String)
      */
+    @Override
     public void explicitlyActivate(String profileId) {
         if (!activatedIds.contains(profileId)) {
             logger.debug("Profile with id: '" + profileId + "' has been explicitly activated.");
@@ -126,6 +130,7 @@ public void explicitlyActivate(String profileId) {
     /* (non-Javadoc)
      * @see org.apache.maven.profiles.ProfileManager#explicitlyActivate(java.util.List)
      */
+    @Override
     public void explicitlyActivate(List<String> profileIds) {
         for (String profileId1 : profileIds) {
             explicitlyActivate(profileId1);
@@ -135,6 +140,7 @@ public void explicitlyActivate(List<String> profileIds) {
     /* (non-Javadoc)
      * @see org.apache.maven.profiles.ProfileManager#explicitlyDeactivate(java.lang.String)
      */
+    @Override
     public void explicitlyDeactivate(String profileId) {
         if (!deactivatedIds.contains(profileId)) {
             logger.debug("Profile with id: '" + profileId + "' has been explicitly deactivated.");
@@ -146,6 +152,7 @@ public void explicitlyDeactivate(String profileId) {
     /* (non-Javadoc)
      * @see org.apache.maven.profiles.ProfileManager#explicitlyDeactivate(java.util.List)
      */
+    @Override
     public void explicitlyDeactivate(List<String> profileIds) {
         for (String profileId1 : profileIds) {
             explicitlyDeactivate(profileId1);
@@ -155,6 +162,7 @@ public void explicitlyDeactivate(List<String> profileIds) {
     /* (non-Javadoc)
      * @see org.apache.maven.profiles.ProfileManager#getActiveProfiles()
      */
+    @Override
     public List getActiveProfiles() throws ProfileActivationException {
         DefaultProfileActivationContext context = new DefaultProfileActivationContext();
         context.setActiveProfileIds(activatedIds);
@@ -180,6 +188,7 @@ public List getActiveProfiles() throws ProfileActivationException {
     /* (non-Javadoc)
      * @see org.apache.maven.profiles.ProfileManager#addProfiles(java.util.List)
      */
+    @Override
     public void addProfiles(List<Profile> profiles) {
         for (Profile profile1 : profiles) {
             addProfile(profile1);
@@ -192,14 +201,17 @@ public void activateAsDefault(String profileId) {
         }
     }
 
+    @Override
     public List<String> getExplicitlyActivatedIds() {
         return activatedIds;
     }
 
+    @Override
     public List<String> getExplicitlyDeactivatedIds() {
         return deactivatedIds;
     }
 
+    @Override
     public List getIdsActivatedByDefault() {
         return defaultIds;
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/profiles/activation/DetectedProfileActivator.java b/compat/maven-compat/src/main/java/org/apache/maven/profiles/activation/DetectedProfileActivator.java
index ee023ff77c..5afd5788c6 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/profiles/activation/DetectedProfileActivator.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/profiles/activation/DetectedProfileActivator.java
@@ -25,6 +25,7 @@
  */
 @Deprecated
 public abstract class DetectedProfileActivator implements ProfileActivator {
+    @Override
     public boolean canDetermineActivation(Profile profile) {
         return canDetectActivation(profile);
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/profiles/activation/FileProfileActivator.java b/compat/maven-compat/src/main/java/org/apache/maven/profiles/activation/FileProfileActivator.java
index 081ff5fdfb..8a1b82a8e9 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/profiles/activation/FileProfileActivator.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/profiles/activation/FileProfileActivator.java
@@ -38,10 +38,12 @@
 public class FileProfileActivator extends DetectedProfileActivator implements LogEnabled {
     private Logger logger;
 
+    @Override
     protected boolean canDetectActivation(Profile profile) {
         return profile.getActivation() != null && profile.getActivation().getFile() != null;
     }
 
+    @Override
     public boolean isActive(Profile profile) {
         Activation activation = profile.getActivation();
 
@@ -87,6 +89,7 @@ public boolean isActive(Profile profile) {
         return false;
     }
 
+    @Override
     public void enableLogging(Logger logger) {
         this.logger = logger;
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/profiles/activation/JdkPrefixProfileActivator.java b/compat/maven-compat/src/main/java/org/apache/maven/profiles/activation/JdkPrefixProfileActivator.java
index 4e18159c75..223a33c00d 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/profiles/activation/JdkPrefixProfileActivator.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/profiles/activation/JdkPrefixProfileActivator.java
@@ -31,6 +31,7 @@
 public class JdkPrefixProfileActivator extends DetectedProfileActivator {
     private static final String JDK_VERSION = System.getProperty("java.version");
 
+    @Override
     public boolean isActive(Profile profile) throws ProfileActivationException {
         Activation activation = profile.getActivation();
 
@@ -74,6 +75,7 @@ protected String getJdkVersion() {
         return JDK_VERSION;
     }
 
+    @Override
     protected boolean canDetectActivation(Profile profile) {
         return profile.getActivation() != null
                 && profile.getActivation().getJdk() != null
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/profiles/activation/OperatingSystemProfileActivator.java b/compat/maven-compat/src/main/java/org/apache/maven/profiles/activation/OperatingSystemProfileActivator.java
index 0a33cdc2f8..0c7944b539 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/profiles/activation/OperatingSystemProfileActivator.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/profiles/activation/OperatingSystemProfileActivator.java
@@ -29,11 +29,13 @@
 @Deprecated
 public class OperatingSystemProfileActivator implements ProfileActivator {
 
+    @Override
     public boolean canDetermineActivation(Profile profile) {
         Activation activation = profile.getActivation();
         return activation != null && activation.getOs() != null;
     }
 
+    @Override
     public boolean isActive(Profile profile) {
         Activation activation = profile.getActivation();
         ActivationOS os = activation.getOs();
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/profiles/activation/SystemPropertyProfileActivator.java b/compat/maven-compat/src/main/java/org/apache/maven/profiles/activation/SystemPropertyProfileActivator.java
index 59d65d395a..32a29f8aed 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/profiles/activation/SystemPropertyProfileActivator.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/profiles/activation/SystemPropertyProfileActivator.java
@@ -34,14 +34,17 @@
 public class SystemPropertyProfileActivator extends DetectedProfileActivator implements Contextualizable {
     private Properties properties;
 
+    @Override
     public void contextualize(Context context) throws ContextException {
         properties = (Properties) context.get("SystemProperties");
     }
 
+    @Override
     protected boolean canDetectActivation(Profile profile) {
         return profile.getActivation() != null && profile.getActivation().getProperty() != null;
     }
 
+    @Override
     public boolean isActive(Profile profile) throws ProfileActivationException {
         Activation activation = profile.getActivation();
 
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java b/compat/maven-compat/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
index a484104d05..300b0298c4 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
@@ -171,6 +171,7 @@ private ProjectBuildingException transformError(ProjectBuildingException e) {
         return e;
     }
 
+    @Override
     public MavenProject build(File pom, ProjectBuilderConfiguration configuration) throws ProjectBuildingException {
         ProjectBuildingRequest request = injectSession(toRequest(configuration));
 
@@ -182,6 +183,7 @@ public MavenProject build(File pom, ProjectBuilderConfiguration configuration) t
     }
 
     // This is used by the SITE plugin.
+    @Override
     public MavenProject build(File pom, ArtifactRepository localRepository, ProfileManager profileManager)
             throws ProjectBuildingException {
         ProjectBuilderConfiguration configuration = new DefaultProjectBuilderConfiguration();
@@ -209,6 +211,7 @@ public MavenProject buildFromRepository(
         }
     }
 
+    @Override
     public MavenProject buildFromRepository(
             Artifact artifact,
             List<ArtifactRepository> remoteRepositories,
@@ -221,6 +224,7 @@ public MavenProject buildFromRepository(
         return buildFromRepository(artifact, remoteRepositories, configuration, allowStubModel);
     }
 
+    @Override
     public MavenProject buildFromRepository(
             Artifact artifact, List<ArtifactRepository> remoteRepositories, ArtifactRepository localRepository)
             throws ProjectBuildingException {
@@ -231,6 +235,7 @@ public MavenProject buildFromRepository(
      * This is used for pom-less execution like running archetype:generate. I am taking out the profile handling and the
      * interpolation of the base directory until we spec this out properly.
      */
+    @Override
     public MavenProject buildStandaloneSuperProject(ProjectBuilderConfiguration configuration)
             throws ProjectBuildingException {
         ProjectBuildingRequest request = injectSession(toRequest(configuration));
@@ -244,11 +249,13 @@ public MavenProject buildStandaloneSuperProject(ProjectBuilderConfiguration conf
         return project;
     }
 
+    @Override
     public MavenProject buildStandaloneSuperProject(ArtifactRepository localRepository)
             throws ProjectBuildingException {
         return buildStandaloneSuperProject(localRepository, null);
     }
 
+    @Override
     public MavenProject buildStandaloneSuperProject(ArtifactRepository localRepository, ProfileManager profileManager)
             throws ProjectBuildingException {
         ProjectBuilderConfiguration configuration = new DefaultProjectBuilderConfiguration();
@@ -258,6 +265,7 @@ public MavenProject buildStandaloneSuperProject(ArtifactRepository localReposito
         return buildStandaloneSuperProject(configuration);
     }
 
+    @Override
     public MavenProject buildWithDependencies(
             File pom,
             ArtifactRepository localRepository,
@@ -279,6 +287,7 @@ public MavenProject buildWithDependencies(
         }
     }
 
+    @Override
     public MavenProject buildWithDependencies(
             File pom, ArtifactRepository localRepository, ProfileManager profileManager)
             throws ProjectBuildingException, ArtifactResolutionException, ArtifactNotFoundException {
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/project/DefaultProjectBuilderConfiguration.java b/compat/maven-compat/src/main/java/org/apache/maven/project/DefaultProjectBuilderConfiguration.java
index e19fdec547..3fc47cd720 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/project/DefaultProjectBuilderConfiguration.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/project/DefaultProjectBuilderConfiguration.java
@@ -42,29 +42,35 @@ public class DefaultProjectBuilderConfiguration implements ProjectBuilderConfigu
 
     public DefaultProjectBuilderConfiguration() {}
 
+    @Override
     public ProjectBuilderConfiguration setGlobalProfileManager(ProfileManager globalProfileManager) {
         this.globalProfileManager = globalProfileManager;
         return this;
     }
 
+    @Override
     public ProfileManager getGlobalProfileManager() {
         return globalProfileManager;
     }
 
+    @Override
     public ProjectBuilderConfiguration setLocalRepository(ArtifactRepository localRepository) {
         this.localRepository = localRepository;
         return this;
     }
 
+    @Override
     public ArtifactRepository getLocalRepository() {
         return localRepository;
     }
 
+    @Override
     public ProjectBuilderConfiguration setUserProperties(Properties userProperties) {
         this.userProperties = userProperties;
         return this;
     }
 
+    @Override
     public Properties getUserProperties() {
         if (userProperties == null) {
             userProperties = new Properties();
@@ -73,19 +79,23 @@ public Properties getUserProperties() {
         return userProperties;
     }
 
+    @Override
     public Properties getExecutionProperties() {
         return executionProperties;
     }
 
+    @Override
     public ProjectBuilderConfiguration setExecutionProperties(Properties executionProperties) {
         this.executionProperties = executionProperties;
         return this;
     }
 
+    @Override
     public Date getBuildStartTime() {
         return buildStartTime;
     }
 
+    @Override
     public ProjectBuilderConfiguration setBuildStartTime(Date buildStartTime) {
         this.buildStartTime = buildStartTime;
         return this;
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/project/artifact/ActiveProjectArtifact.java b/compat/maven-compat/src/main/java/org/apache/maven/project/artifact/ActiveProjectArtifact.java
index c59595b80d..19c5b64dc0 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/project/artifact/ActiveProjectArtifact.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/project/artifact/ActiveProjectArtifact.java
@@ -54,243 +54,291 @@ public ActiveProjectArtifact(MavenProject project, Artifact artifact) {
     }
 
     /** {@inheritDoc} */
+    @Override
     public File getFile() {
         // we need to get the latest file for the project, not the artifact that was created at one point in time
         return project.getArtifact().getFile();
     }
 
     /** {@inheritDoc} */
+    @Override
     public String getGroupId() {
         return artifact.getGroupId();
     }
 
     /** {@inheritDoc} */
+    @Override
     public String getArtifactId() {
         return artifact.getArtifactId();
     }
 
     /** {@inheritDoc} */
+    @Override
     public String getVersion() {
         return artifact.getVersion();
     }
 
     /** {@inheritDoc} */
+    @Override
     public void setVersion(String version) {
         artifact.setVersion(version);
     }
 
     /** {@inheritDoc} */
+    @Override
     public String getScope() {
         return artifact.getScope();
     }
 
     /** {@inheritDoc} */
+    @Override
     public String getType() {
         return artifact.getType();
     }
 
     /** {@inheritDoc} */
+    @Override
     public String getClassifier() {
         return artifact.getClassifier();
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean hasClassifier() {
         return artifact.hasClassifier();
     }
 
     /** {@inheritDoc} */
+    @Override
     public void setFile(File destination) {
         artifact.setFile(destination);
         project.getArtifact().setFile(destination);
     }
 
     /** {@inheritDoc} */
+    @Override
     public String getBaseVersion() {
         return artifact.getBaseVersion();
     }
 
     /** {@inheritDoc} */
+    @Override
     public void setBaseVersion(String baseVersion) {
         artifact.setBaseVersion(baseVersion);
     }
 
     /** {@inheritDoc} */
+    @Override
     public String getId() {
         return artifact.getId();
     }
 
     /** {@inheritDoc} */
+    @Override
     public String getDependencyConflictId() {
         return artifact.getDependencyConflictId();
     }
 
     /** {@inheritDoc} */
+    @Override
     public void addMetadata(ArtifactMetadata metadata) {
         artifact.addMetadata(metadata);
     }
 
     /** {@inheritDoc} */
+    @Override
     public Collection<ArtifactMetadata> getMetadataList() {
         return artifact.getMetadataList();
     }
 
     /** {@inheritDoc} */
+    @Override
     public void setRepository(ArtifactRepository remoteRepository) {
         artifact.setRepository(remoteRepository);
     }
 
     /** {@inheritDoc} */
+    @Override
     public ArtifactRepository getRepository() {
         return artifact.getRepository();
     }
 
     /** {@inheritDoc} */
+    @Override
     public void updateVersion(String version, ArtifactRepository localRepository) {
         artifact.updateVersion(version, localRepository);
     }
 
     /** {@inheritDoc} */
+    @Override
     public String getDownloadUrl() {
         return artifact.getDownloadUrl();
     }
 
     /** {@inheritDoc} */
+    @Override
     public void setDownloadUrl(String downloadUrl) {
         artifact.setDownloadUrl(downloadUrl);
     }
 
     /** {@inheritDoc} */
+    @Override
     public ArtifactFilter getDependencyFilter() {
         return artifact.getDependencyFilter();
     }
 
     /** {@inheritDoc} */
+    @Override
     public void setDependencyFilter(ArtifactFilter artifactFilter) {
         artifact.setDependencyFilter(artifactFilter);
     }
 
     /** {@inheritDoc} */
+    @Override
     public ArtifactHandler getArtifactHandler() {
         return artifact.getArtifactHandler();
     }
 
     /** {@inheritDoc} */
+    @Override
     public List<String> getDependencyTrail() {
         return artifact.getDependencyTrail();
     }
 
     /** {@inheritDoc} */
+    @Override
     public void setDependencyTrail(List<String> dependencyTrail) {
         artifact.setDependencyTrail(dependencyTrail);
     }
 
     /** {@inheritDoc} */
+    @Override
     public void setScope(String scope) {
         artifact.setScope(scope);
     }
 
     /** {@inheritDoc} */
+    @Override
     public VersionRange getVersionRange() {
         return artifact.getVersionRange();
     }
 
     /** {@inheritDoc} */
+    @Override
     public void setVersionRange(VersionRange newRange) {
         artifact.setVersionRange(newRange);
     }
 
     /** {@inheritDoc} */
+    @Override
     public void selectVersion(String version) {
         artifact.selectVersion(version);
     }
 
     /** {@inheritDoc} */
+    @Override
     public void setGroupId(String groupId) {
         artifact.setGroupId(groupId);
     }
 
     /** {@inheritDoc} */
+    @Override
     public void setArtifactId(String artifactId) {
         artifact.setArtifactId(artifactId);
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean isSnapshot() {
         return artifact.isSnapshot();
     }
 
     /** {@inheritDoc} */
+    @Override
     public int compareTo(Artifact a) {
         return artifact.compareTo(a);
     }
 
     /** {@inheritDoc} */
+    @Override
     public void setResolved(boolean resolved) {
         artifact.setResolved(resolved);
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean isResolved() {
         return artifact.isResolved();
     }
 
     /** {@inheritDoc} */
+    @Override
     public void setResolvedVersion(String version) {
         artifact.setResolvedVersion(version);
     }
 
     /** {@inheritDoc} */
+    @Override
     public void setArtifactHandler(ArtifactHandler handler) {
         artifact.setArtifactHandler(handler);
     }
 
     /** {@inheritDoc} */
+    @Override
     public String toString() {
         return "active project artifact[artifact: " + artifact + ", project: " + project + "]";
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean isRelease() {
         return artifact.isRelease();
     }
 
     /** {@inheritDoc} */
+    @Override
     public void setRelease(boolean release) {
         artifact.setRelease(release);
     }
 
     /** {@inheritDoc} */
+    @Override
     public List<ArtifactVersion> getAvailableVersions() {
         return artifact.getAvailableVersions();
     }
 
     /** {@inheritDoc} */
+    @Override
     public void setAvailableVersions(List<ArtifactVersion> versions) {
         artifact.setAvailableVersions(versions);
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean isOptional() {
         return artifact.isOptional();
     }
 
     /** {@inheritDoc} */
+    @Override
     public ArtifactVersion getSelectedVersion() throws OverConstrainedVersionException {
         return artifact.getSelectedVersion();
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean isSelectedVersionKnown() throws OverConstrainedVersionException {
         return artifact.isSelectedVersionKnown();
     }
 
     /** {@inheritDoc} */
+    @Override
     public void setOptional(boolean optional) {
         artifact.setOptional(optional);
     }
 
     /** {@inheritDoc} */
+    @Override
     public int hashCode() {
         int result = 17;
 
@@ -306,6 +354,7 @@ public int hashCode() {
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean equals(Object o) {
         if (o == this) {
             return true;
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/project/artifact/DefaultMavenMetadataCache.java b/compat/maven-compat/src/main/java/org/apache/maven/project/artifact/DefaultMavenMetadataCache.java
index e19e1ed940..280a0e91d7 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/project/artifact/DefaultMavenMetadataCache.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/project/artifact/DefaultMavenMetadataCache.java
@@ -262,6 +262,7 @@ public boolean isStale() {
         }
     }
 
+    @Override
     public ResolutionGroup get(
             Artifact artifact,
             boolean resolveManagedVersions,
@@ -288,6 +289,7 @@ public ResolutionGroup get(
         return null;
     }
 
+    @Override
     public void put(
             Artifact artifact,
             boolean resolveManagedVersions,
@@ -316,6 +318,7 @@ protected void put(CacheKey cacheKey, ResolutionGroup result) {
         cache.put(cacheKey, cacheRecord);
     }
 
+    @Override
     public void flush() {
         cache.clear();
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/project/artifact/ProjectArtifactMetadata.java b/compat/maven-compat/src/main/java/org/apache/maven/project/artifact/ProjectArtifactMetadata.java
index 3cdd8a2546..3c21e42166 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/project/artifact/ProjectArtifactMetadata.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/project/artifact/ProjectArtifactMetadata.java
@@ -49,10 +49,12 @@ public File getFile() {
         return file;
     }
 
+    @Override
     public String getRemoteFilename() {
         return getFilename();
     }
 
+    @Override
     public String getLocalFilename(ArtifactRepository repository) {
         return getFilename();
     }
@@ -61,6 +63,7 @@ private String getFilename() {
         return getArtifactId() + "-" + artifact.getVersion() + ".pom";
     }
 
+    @Override
     public void storeInLocalRepository(ArtifactRepository localRepository, ArtifactRepository remoteRepository)
             throws RepositoryMetadataStoreException {
         File destination = new File(
@@ -81,22 +84,27 @@ public void storeInLocalRepository(ArtifactRepository localRepository, ArtifactR
         }
     }
 
+    @Override
     public String toString() {
         return "project information for " + artifact.getArtifactId() + " " + artifact.getVersion();
     }
 
+    @Override
     public boolean storedInArtifactVersionDirectory() {
         return true;
     }
 
+    @Override
     public String getBaseVersion() {
         return artifact.getBaseVersion();
     }
 
+    @Override
     public Object getKey() {
         return "project " + artifact.getGroupId() + ":" + artifact.getArtifactId();
     }
 
+    @Override
     public void merge(ArtifactMetadata metadata) {
         ProjectArtifactMetadata m = (ProjectArtifactMetadata) metadata;
         if (!m.file.equals(file)) {
@@ -104,6 +112,7 @@ public void merge(ArtifactMetadata metadata) {
         }
     }
 
+    @Override
     public void merge(org.apache.maven.repository.legacy.metadata.ArtifactMetadata metadata) {
         this.merge((ArtifactMetadata) metadata);
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/project/interpolation/AbstractStringBasedModelInterpolator.java b/compat/maven-compat/src/main/java/org/apache/maven/project/interpolation/AbstractStringBasedModelInterpolator.java
index 34d0b7ade3..5fa63fc610 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/project/interpolation/AbstractStringBasedModelInterpolator.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/project/interpolation/AbstractStringBasedModelInterpolator.java
@@ -100,6 +100,7 @@ protected AbstractStringBasedModelInterpolator(PathTranslator pathTranslator) {
 
     protected AbstractStringBasedModelInterpolator() {}
 
+    @Override
     public Model interpolate(Model model, Map<String, ?> context) throws ModelInterpolationException {
         return interpolate(model, context, true);
     }
@@ -118,6 +119,7 @@ public Model interpolate(Model model, Map<String, ?> context) throws ModelInterp
      * @deprecated Use {@link ModelInterpolator#interpolate(Model, File, ProjectBuilderConfiguration, boolean)} instead.
      */
     @Deprecated
+    @Override
     public Model interpolate(Model model, Map<String, ?> context, boolean strict) throws ModelInterpolationException {
         Properties props = new Properties();
         props.putAll(context);
@@ -125,6 +127,7 @@ public Model interpolate(Model model, Map<String, ?> context, boolean strict) th
         return interpolate(model, null, new DefaultProjectBuilderConfiguration().setExecutionProperties(props), true);
     }
 
+    @Override
     public Model interpolate(Model model, File projectDir, ProjectBuilderConfiguration config, boolean debugEnabled)
             throws ModelInterpolationException {
         StringWriter sWriter = new StringWriter(1024);
@@ -164,6 +167,7 @@ public Model interpolate(Model model, File projectDir, ProjectBuilderConfigurati
      *   <li>If the value is null, get it from the model properties.</li>
      * </ul>
      */
+    @Override
     public String interpolate(
             String src, Model model, final File projectDir, ProjectBuilderConfiguration config, boolean debug)
             throws ModelInterpolationException {
@@ -192,6 +196,7 @@ protected List<ValueSource> createValueSources(
         ValueSource basedirValueSource = new PrefixedValueSourceWrapper(
                 new AbstractValueSource(false) {
 
+                    @Override
                     public Object getValue(String expression) {
                         if (projectDir != null && "basedir".equals(expression)) {
                             return projectDir.getAbsolutePath();
@@ -204,6 +209,7 @@ public Object getValue(String expression) {
         ValueSource baseUriValueSource = new PrefixedValueSourceWrapper(
                 new AbstractValueSource(false) {
 
+                    @Override
                     public Object getValue(String expression) {
                         if (projectDir != null && "baseUri".equals(expression)) {
                             return projectDir.getAbsoluteFile().toPath().toUri().toASCIIString();
@@ -226,6 +232,7 @@ public Object getValue(String expression) {
         valueSources.add(new MapBasedValueSource(config.getExecutionProperties()));
         valueSources.add(new AbstractValueSource(false) {
 
+            @Override
             public Object getValue(String expression) {
                 return config.getExecutionProperties().getProperty("env." + expression);
             }
@@ -321,6 +328,7 @@ protected void setRecursionInterceptor(RecursionInterceptor recursionInterceptor
 
     protected abstract Interpolator createInterpolator();
 
+    @Override
     public void initialize() throws InitializationException {
         interpolator = createInterpolator();
         recursionInterceptor = new PrefixAwareRecursionInterceptor(PROJECT_PREFIXES);
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/project/interpolation/BuildTimestampValueSource.java b/compat/maven-compat/src/main/java/org/apache/maven/project/interpolation/BuildTimestampValueSource.java
index f2af8036ae..263f04ee95 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/project/interpolation/BuildTimestampValueSource.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/project/interpolation/BuildTimestampValueSource.java
@@ -41,6 +41,7 @@ public BuildTimestampValueSource(Date startTime, String format) {
         this.format = format;
     }
 
+    @Override
     public Object getValue(String expression) {
         if ("build.timestamp".equals(expression) || "maven.build.timestamp".equals(expression)) {
             if (formattedDate == null && startTime != null) {
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/project/interpolation/PathTranslatingPostProcessor.java b/compat/maven-compat/src/main/java/org/apache/maven/project/interpolation/PathTranslatingPostProcessor.java
index c6651fbf7d..255826d3ea 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/project/interpolation/PathTranslatingPostProcessor.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/project/interpolation/PathTranslatingPostProcessor.java
@@ -47,6 +47,7 @@ public PathTranslatingPostProcessor(
         this.pathTranslator = pathTranslator;
     }
 
+    @Override
     public Object execute(String expression, Object value) {
         expression = ValueSourceUtils.trimPrefix(expression, expressionPrefixes, true);
 
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/project/interpolation/RegexBasedModelInterpolator.java b/compat/maven-compat/src/main/java/org/apache/maven/project/interpolation/RegexBasedModelInterpolator.java
index f1dfe3f4ad..6449da7416 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/project/interpolation/RegexBasedModelInterpolator.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/project/interpolation/RegexBasedModelInterpolator.java
@@ -41,6 +41,7 @@ public RegexBasedModelInterpolator(PathTranslator pathTranslator) {
 
     public RegexBasedModelInterpolator(Properties envars) {}
 
+    @Override
     protected Interpolator createInterpolator() {
         return new RegexBasedInterpolator(true);
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/project/interpolation/StringSearchModelInterpolator.java b/compat/maven-compat/src/main/java/org/apache/maven/project/interpolation/StringSearchModelInterpolator.java
index 9e70e0c49c..c9d941a446 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/project/interpolation/StringSearchModelInterpolator.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/project/interpolation/StringSearchModelInterpolator.java
@@ -59,6 +59,7 @@ public StringSearchModelInterpolator(PathTranslator pathTranslator) {
         super(pathTranslator);
     }
 
+    @Override
     public Model interpolate(Model model, File projectDir, ProjectBuilderConfiguration config, boolean debugEnabled)
             throws ModelInterpolationException {
         interpolateObject(model, model, projectDir, config, debugEnabled);
@@ -86,6 +87,7 @@ protected void interpolateObject(
         }
     }
 
+    @Override
     protected Interpolator createInterpolator() {
         StringSearchInterpolator interpolator = new StringSearchInterpolator();
         interpolator.setCacheAnswers(true);
@@ -120,6 +122,7 @@ private static final class InterpolateObjectAction implements PrivilegedAction<M
             this.logger = logger;
         }
 
+        @Override
         public ModelInterpolationException run() {
             while (!interpolationTargets.isEmpty()) {
                 Object obj = interpolationTargets.removeFirst();
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/project/path/DefaultPathTranslator.java b/compat/maven-compat/src/main/java/org/apache/maven/project/path/DefaultPathTranslator.java
index e08b2e24a4..8567e9765c 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/project/path/DefaultPathTranslator.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/project/path/DefaultPathTranslator.java
@@ -39,6 +39,7 @@
 public class DefaultPathTranslator implements PathTranslator {
     private static final String[] BASEDIR_EXPRESSIONS = {"${basedir}", "${pom.basedir}", "${project.basedir}"};
 
+    @Override
     public void alignToBaseDirectory(Model model, File basedir) {
         if (basedir == null) {
             return;
@@ -81,6 +82,7 @@ public void alignToBaseDirectory(Model model, File basedir) {
         }
     }
 
+    @Override
     public String alignToBaseDirectory(String path, File basedir) {
         if (basedir == null) {
             return path;
@@ -146,6 +148,7 @@ private String chopLeadingFileSeparator(String path) {
         return path;
     }
 
+    @Override
     public void unalignFromBaseDirectory(Model model, File basedir) {
         if (basedir == null) {
             return;
@@ -188,6 +191,7 @@ public void unalignFromBaseDirectory(Model model, File basedir) {
         }
     }
 
+    @Override
     public String unalignFromBaseDirectory(String path, File basedir) {
         if (basedir == null) {
             return path;
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/project/validation/DefaultModelValidator.java b/compat/maven-compat/src/main/java/org/apache/maven/project/validation/DefaultModelValidator.java
index 180a49e225..59f623e5e2 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/project/validation/DefaultModelValidator.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/project/validation/DefaultModelValidator.java
@@ -39,6 +39,7 @@ public class DefaultModelValidator implements ModelValidator {
     @Inject
     private org.apache.maven.model.validation.ModelValidator modelValidator;
 
+    @Override
     public ModelValidationResult validate(Model model) {
         ModelValidationResult result = new ModelValidationResult();
 
@@ -60,6 +61,7 @@ private static class SimpleModelProblemCollector implements ModelProblemCollecto
             this.result = result;
         }
 
+        @Override
         public void add(ModelProblemCollectorRequest req) {
             if (!ModelProblem.Severity.WARNING.equals(req.getSeverity())) {
                 result.addMessage(req.getMessage());
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/project/validation/ModelValidationResult.java b/compat/maven-compat/src/main/java/org/apache/maven/project/validation/ModelValidationResult.java
index 3a0694c9ac..feae2be0ca 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/project/validation/ModelValidationResult.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/project/validation/ModelValidationResult.java
@@ -53,6 +53,7 @@ public void addMessage(String message) {
         messages.add(message);
     }
 
+    @Override
     public String toString() {
         return render("");
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/ArtifactTransferEvent.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/ArtifactTransferEvent.java
index f6b70ffdf7..2dfe5f85b7 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/ArtifactTransferEvent.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/ArtifactTransferEvent.java
@@ -216,6 +216,7 @@ public void setDataLength(int dataLength) {
         this.dataLength = dataLength;
     }
 
+    @Override
     public String toString() {
         StringBuilder sb = new StringBuilder(64);
 
@@ -262,6 +263,7 @@ public String toString() {
         return sb.toString();
     }
 
+    @Override
     public int hashCode() {
         final int prime = 31;
         int result = 1;
@@ -272,6 +274,7 @@ public int hashCode() {
         return result;
     }
 
+    @Override
     public boolean equals(Object obj) {
         if (this == obj) {
             return true;
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/DefaultMirrorSelector.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/DefaultMirrorSelector.java
index 7cc34f53cc..ace636cbcc 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/DefaultMirrorSelector.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/DefaultMirrorSelector.java
@@ -43,6 +43,7 @@ public class DefaultMirrorSelector implements MirrorSelector {
 
     private static final String EXTERNAL_HTTP_WILDCARD = "external:http:*";
 
+    @Override
     public Mirror getMirror(ArtifactRepository repository, List<Mirror> mirrors) {
         String repoId = repository.getId();
 
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/DelegatingLocalArtifactRepository.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/DelegatingLocalArtifactRepository.java
index 306d61230b..30827c6a4d 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/DelegatingLocalArtifactRepository.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/DelegatingLocalArtifactRepository.java
@@ -101,10 +101,12 @@ public List<String> findVersions(Artifact artifact) {
         return Collections.unmodifiableList(new ArrayList<>(versions));
     }
 
+    @Override
     public String pathOfLocalRepositoryMetadata(ArtifactMetadata metadata, ArtifactRepository repository) {
         return userLocalArtifactRepository.pathOfLocalRepositoryMetadata(metadata, repository);
     }
 
+    @Override
     public String getId() {
         return userLocalArtifactRepository.getId();
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/LocalArtifactRepository.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/LocalArtifactRepository.java
index 3577c316ad..0a14d8bab9 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/LocalArtifactRepository.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/LocalArtifactRepository.java
@@ -28,6 +28,7 @@
 public abstract class LocalArtifactRepository extends MavenArtifactRepository {
     public static final String IDE_WORKSPACE = "ide-workspace";
 
+    @Override
     public abstract Artifact find(Artifact artifact);
 
     public abstract boolean hasLocalMetadata();
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/MetadataResolutionRequest.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/MetadataResolutionRequest.java
index 4c438ca1e7..75ae3047ac 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/MetadataResolutionRequest.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/MetadataResolutionRequest.java
@@ -133,6 +133,7 @@ public MetadataResolutionRequest setManagedVersionMap(Map managedVersionMap) {
         return this;
     }
 
+    @Override
     public String toString() {
         StringBuilder sb = new StringBuilder()
                 .append("REQUEST: ")
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/MetadataResolutionResult.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/MetadataResolutionResult.java
index 1ef5827810..5e1347c73f 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/MetadataResolutionResult.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/MetadataResolutionResult.java
@@ -276,6 +276,7 @@ private <T> List<T> initList(final List<T> l) {
         return l;
     }
 
+    @Override
     public String toString() {
         if (artifacts == null) {
             return "";
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/LegacyRepositorySystem.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/LegacyRepositorySystem.java
index 9f6191c9fb..f748a477d2 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/LegacyRepositorySystem.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/LegacyRepositorySystem.java
@@ -113,23 +113,28 @@ public class LegacyRepositorySystem implements RepositorySystem {
     @Inject
     private SettingsDecrypter settingsDecrypter;
 
+    @Override
     public Artifact createArtifact(String groupId, String artifactId, String version, String scope, String type) {
         return artifactFactory.createArtifact(groupId, artifactId, version, scope, type);
     }
 
+    @Override
     public Artifact createArtifact(String groupId, String artifactId, String version, String packaging) {
         return artifactFactory.createBuildArtifact(groupId, artifactId, version, packaging);
     }
 
+    @Override
     public Artifact createArtifactWithClassifier(
             String groupId, String artifactId, String version, String type, String classifier) {
         return artifactFactory.createArtifactWithClassifier(groupId, artifactId, version, type, classifier);
     }
 
+    @Override
     public Artifact createProjectArtifact(String groupId, String artifactId, String metaVersionId) {
         return artifactFactory.createProjectArtifact(groupId, artifactId, metaVersionId);
     }
 
+    @Override
     public Artifact createDependencyArtifact(Dependency d) {
         VersionRange versionRange;
         try {
@@ -191,6 +196,7 @@ public Artifact createParentArtifact(String groupId, String artifactId, String v
         return artifactFactory.createParentArtifact(groupId, artifactId, version);
     }
 
+    @Override
     public Artifact createPluginArtifact(Plugin plugin) {
         String version = plugin.getVersion();
         if (version == null || version.isEmpty()) {
@@ -233,10 +239,12 @@ public ArtifactRepositoryPolicy buildArtifactRepositoryPolicy(RepositoryPolicy p
         return new ArtifactRepositoryPolicy(enabled, updatePolicy, checksumPolicy);
     }
 
+    @Override
     public ArtifactRepository createDefaultLocalRepository() throws InvalidRepositoryException {
         return createLocalRepository(RepositorySystem.defaultUserLocalRepository);
     }
 
+    @Override
     public ArtifactRepository createLocalRepository(File localRepository) throws InvalidRepositoryException {
         return createRepository(
                 "file://" + localRepository.toURI().getRawPath(),
@@ -248,6 +256,7 @@ public ArtifactRepository createLocalRepository(File localRepository) throws Inv
                 ArtifactRepositoryPolicy.CHECKSUM_POLICY_IGNORE);
     }
 
+    @Override
     public ArtifactRepository createDefaultRemoteRepository() throws InvalidRepositoryException {
         return createRepository(
                 RepositorySystem.DEFAULT_REMOTE_REPO_URL,
@@ -293,6 +302,7 @@ private String canonicalFileUrl(String url) throws IOException {
         return url;
     }
 
+    @Override
     public ArtifactResolutionResult resolve(ArtifactResolutionRequest request) {
         /*
          * Probably is not worth it, but here I make sure I restore request
@@ -331,6 +341,7 @@ public ArtifactResolutionResult resolve(ArtifactResolutionRequest request) {
         return artifactResolver.resolve(request);
     }
 
+    @Override
     public List<ArtifactRepository> getEffectiveRepositories(List<ArtifactRepository> repositories) {
         if (repositories == null) {
             return null;
@@ -401,10 +412,12 @@ private ArtifactRepositoryPolicy getEffectivePolicy(Collection<ArtifactRepositor
         return effectivePolicy;
     }
 
+    @Override
     public Mirror getMirror(ArtifactRepository repository, List<Mirror> mirrors) {
         return mirrorSelector.getMirror(repository, mirrors);
     }
 
+    @Override
     public void injectMirror(List<ArtifactRepository> repositories, List<Mirror> mirrors) {
         if (repositories != null && mirrors != null) {
             for (ArtifactRepository repository : repositories) {
@@ -432,6 +445,7 @@ private Mirror getMirror(RepositorySystemSession session, ArtifactRepository rep
         return null;
     }
 
+    @Override
     public void injectMirror(RepositorySystemSession session, List<ArtifactRepository> repositories) {
         if (repositories != null && session != null) {
             for (ArtifactRepository repository : repositories) {
@@ -463,6 +477,7 @@ private void injectMirror(ArtifactRepository repository, Mirror mirror) {
         }
     }
 
+    @Override
     public void injectAuthentication(List<ArtifactRepository> repositories, List<Server> servers) {
         if (repositories != null) {
             Map<String, Server> serversById = new HashMap<>();
@@ -524,6 +539,7 @@ private Authentication getAuthentication(RepositorySystemSession session, Artifa
         return null;
     }
 
+    @Override
     public void injectAuthentication(RepositorySystemSession session, List<ArtifactRepository> repositories) {
         if (repositories != null && session != null) {
             for (ArtifactRepository repository : repositories) {
@@ -559,6 +575,7 @@ private org.apache.maven.settings.Proxy getProxy(
         return null;
     }
 
+    @Override
     public void injectProxy(List<ArtifactRepository> repositories, List<org.apache.maven.settings.Proxy> proxies) {
         if (repositories != null) {
             for (ArtifactRepository repository : repositories) {
@@ -620,6 +637,7 @@ private Proxy getProxy(RepositorySystemSession session, ArtifactRepository repos
         return null;
     }
 
+    @Override
     public void injectProxy(RepositorySystemSession session, List<ArtifactRepository> repositories) {
         if (repositories != null && session != null) {
             for (ArtifactRepository repository : repositories) {
@@ -628,6 +646,7 @@ public void injectProxy(RepositorySystemSession session, List<ArtifactRepository
         }
     }
 
+    @Override
     public void retrieve(
             ArtifactRepository repository,
             File destination,
@@ -649,6 +668,7 @@ public void retrieve(
         }
     }
 
+    @Override
     public void publish(
             ArtifactRepository repository, File source, String remotePath, ArtifactTransferListener transferListener)
             throws ArtifactTransferFailedException {
@@ -663,6 +683,7 @@ public void publish(
     //
     // Artifact Repository Creation
     //
+    @Override
     public ArtifactRepository buildArtifactRepository(Repository repo) throws InvalidRepositoryException {
         if (repo != null) {
             String id = repo.getId();
@@ -704,6 +725,7 @@ private ArtifactRepository createRepository(
         return createArtifactRepository(repositoryId, url, null, snapshotsPolicy, releasesPolicy);
     }
 
+    @Override
     public ArtifactRepository createArtifactRepository(
             String repositoryId,
             String url,
@@ -755,18 +777,22 @@ static class UnknownRepositoryLayout implements ArtifactRepositoryLayout {
             this.fallback = fallback;
         }
 
+        @Override
         public String getId() {
             return id;
         }
 
+        @Override
         public String pathOf(Artifact artifact) {
             return fallback.pathOf(artifact);
         }
 
+        @Override
         public String pathOfLocalRepositoryMetadata(ArtifactMetadata metadata, ArtifactRepository repository) {
             return fallback.pathOfLocalRepositoryMetadata(metadata, repository);
         }
 
+        @Override
         public String pathOfRemoteRepositoryMetadata(ArtifactMetadata metadata) {
             return fallback.pathOfRemoteRepositoryMetadata(metadata);
         }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/MavenArtifact.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/MavenArtifact.java
index 8051ded025..fbf7a12b77 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/MavenArtifact.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/MavenArtifact.java
@@ -43,10 +43,12 @@ class MavenArtifact implements ArtifactTransferResource {
         this.transferStartTime = System.currentTimeMillis();
     }
 
+    @Override
     public String getRepositoryUrl() {
         return repositoryUrl;
     }
 
+    @Override
     public String getName() {
         String name = resource.getName();
 
@@ -59,14 +61,17 @@ public String getName() {
         return name;
     }
 
+    @Override
     public String getUrl() {
         return getRepositoryUrl() + getName();
     }
 
+    @Override
     public long getContentLength() {
         return resource.getContentLength();
     }
 
+    @Override
     public long getTransferStartTime() {
         return transferStartTime;
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/TransferListenerAdapter.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/TransferListenerAdapter.java
index e6d533105f..01398b0548 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/TransferListenerAdapter.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/TransferListenerAdapter.java
@@ -55,8 +55,10 @@ private TransferListenerAdapter(ArtifactTransferListener listener) {
         this.transfers = new IdentityHashMap<>();
     }
 
+    @Override
     public void debug(String message) {}
 
+    @Override
     public void transferCompleted(TransferEvent transferEvent) {
         ArtifactTransferEvent event = wrap(transferEvent);
 
@@ -75,6 +77,7 @@ public void transferCompleted(TransferEvent transferEvent) {
         listener.transferCompleted(event);
     }
 
+    @Override
     public void transferError(TransferEvent transferEvent) {
         synchronized (transfers) {
             transfers.remove(transferEvent.getResource());
@@ -84,10 +87,12 @@ public void transferError(TransferEvent transferEvent) {
         }
     }
 
+    @Override
     public void transferInitiated(TransferEvent transferEvent) {
         listener.transferInitiated(wrap(transferEvent));
     }
 
+    @Override
     public void transferProgress(TransferEvent transferEvent, byte[] buffer, int length) {
         Long transferred;
         synchronized (transfers) {
@@ -109,6 +114,7 @@ public void transferProgress(TransferEvent transferEvent, byte[] buffer, int len
         listener.transferProgress(event);
     }
 
+    @Override
     public void transferStarted(TransferEvent transferEvent) {
         listener.transferStarted(wrap(transferEvent));
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/metadata/AbstractArtifactMetadata.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/metadata/AbstractArtifactMetadata.java
index a02af14607..c72b8389f0 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/metadata/AbstractArtifactMetadata.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/metadata/AbstractArtifactMetadata.java
@@ -34,18 +34,22 @@ protected AbstractArtifactMetadata(Artifact artifact) {
         this.artifact = artifact;
     }
 
+    @Override
     public boolean storedInGroupDirectory() {
         return false;
     }
 
+    @Override
     public String getGroupId() {
         return artifact.getGroupId();
     }
 
+    @Override
     public String getArtifactId() {
         return artifact.getArtifactId();
     }
 
+    @Override
     public String extendedToString() {
         StringBuilder buffer = new StringBuilder(256);
 
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/metadata/DefaultMetadataResolutionRequest.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/metadata/DefaultMetadataResolutionRequest.java
index 6e09aa5340..c8ebf35778 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/metadata/DefaultMetadataResolutionRequest.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/metadata/DefaultMetadataResolutionRequest.java
@@ -51,60 +51,72 @@ public DefaultMetadataResolutionRequest(ArtifactResolutionRequest resolutionRequ
         this.repositoryRequest = new DefaultRepositoryRequest(resolutionRequest);
     }
 
+    @Override
     public Artifact getArtifact() {
         return artifact;
     }
 
+    @Override
     public DefaultMetadataResolutionRequest setArtifact(Artifact artifact) {
         this.artifact = artifact;
 
         return this;
     }
 
+    @Override
     public ArtifactRepository getLocalRepository() {
         return repositoryRequest.getLocalRepository();
     }
 
+    @Override
     public DefaultMetadataResolutionRequest setLocalRepository(ArtifactRepository localRepository) {
         repositoryRequest.setLocalRepository(localRepository);
 
         return this;
     }
 
+    @Override
     public List<ArtifactRepository> getRemoteRepositories() {
         return repositoryRequest.getRemoteRepositories();
     }
 
+    @Override
     public DefaultMetadataResolutionRequest setRemoteRepositories(List<ArtifactRepository> remoteRepositories) {
         repositoryRequest.setRemoteRepositories(remoteRepositories);
 
         return this;
     }
 
+    @Override
     public boolean isResolveManagedVersions() {
         return resolveManagedVersions;
     }
 
+    @Override
     public DefaultMetadataResolutionRequest setResolveManagedVersions(boolean resolveManagedVersions) {
         this.resolveManagedVersions = resolveManagedVersions;
 
         return this;
     }
 
+    @Override
     public boolean isOffline() {
         return repositoryRequest.isOffline();
     }
 
+    @Override
     public DefaultMetadataResolutionRequest setOffline(boolean offline) {
         repositoryRequest.setOffline(offline);
 
         return this;
     }
 
+    @Override
     public boolean isForceUpdate() {
         return repositoryRequest.isForceUpdate();
     }
 
+    @Override
     public DefaultMetadataResolutionRequest setForceUpdate(boolean forceUpdate) {
         repositoryRequest.setForceUpdate(forceUpdate);
 
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/metadata/MetadataResolutionRequest.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/metadata/MetadataResolutionRequest.java
index 819e182c91..47e7717f4c 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/metadata/MetadataResolutionRequest.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/metadata/MetadataResolutionRequest.java
@@ -36,6 +36,7 @@ public interface MetadataResolutionRequest extends RepositoryRequest {
      *
      * @return {@code true} if remote access has been disabled, {@code false} otherwise.
      */
+    @Override
     boolean isOffline();
 
     /**
@@ -44,6 +45,7 @@ public interface MetadataResolutionRequest extends RepositoryRequest {
      * @param offline {@code true} to disable remote access, {@code false} to allow network access.
      * @return This request, never {@code null}.
      */
+    @Override
     MetadataResolutionRequest setOffline(boolean offline);
 
     /**
@@ -66,6 +68,7 @@ public interface MetadataResolutionRequest extends RepositoryRequest {
      *
      * @return The local repository to use for the resolution or {@code null} if not set.
      */
+    @Override
     ArtifactRepository getLocalRepository();
 
     /**
@@ -74,6 +77,7 @@ public interface MetadataResolutionRequest extends RepositoryRequest {
      * @param localRepository The local repository to use for the resolution.
      * @return This request, never {@code null}.
      */
+    @Override
     MetadataResolutionRequest setLocalRepository(ArtifactRepository localRepository);
 
     /**
@@ -81,6 +85,7 @@ public interface MetadataResolutionRequest extends RepositoryRequest {
      *
      * @return The remote repositories to use for the resolution, never {@code null}.
      */
+    @Override
     List<ArtifactRepository> getRemoteRepositories();
 
     /**
@@ -89,6 +94,7 @@ public interface MetadataResolutionRequest extends RepositoryRequest {
      * @param remoteRepositories The remote repositories to use for the resolution.
      * @return This request, never {@code null}.
      */
+    @Override
     MetadataResolutionRequest setRemoteRepositories(List<ArtifactRepository> remoteRepositories);
 
     /**
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/DefaultArtifactRepositoryFactory.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/DefaultArtifactRepositoryFactory.java
index 5e1c5a7c35..91df21e9b5 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/DefaultArtifactRepositoryFactory.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/repository/DefaultArtifactRepositoryFactory.java
@@ -45,10 +45,12 @@ public class DefaultArtifactRepositoryFactory implements ArtifactRepositoryFacto
     @Inject
     private Map<String, ArtifactRepositoryLayout> repositoryLayouts;
 
+    @Override
     public ArtifactRepositoryLayout getLayout(String layoutId) throws UnknownRepositoryLayoutException {
         return repositoryLayouts.get(layoutId);
     }
 
+    @Override
     public ArtifactRepository createDeploymentArtifactRepository(
             String id, String url, String layoutId, boolean uniqueVersion) throws UnknownRepositoryLayoutException {
         ArtifactRepositoryLayout layout = repositoryLayouts.get(layoutId);
@@ -65,11 +67,13 @@ private void checkLayout(String repositoryId, String layoutId, ArtifactRepositor
         }
     }
 
+    @Override
     public ArtifactRepository createDeploymentArtifactRepository(
             String id, String url, ArtifactRepositoryLayout repositoryLayout, boolean uniqueVersion) {
         return createArtifactRepository(id, url, repositoryLayout, null, null);
     }
 
+    @Override
     public ArtifactRepository createArtifactRepository(
             String id,
             String url,
@@ -84,6 +88,7 @@ public ArtifactRepository createArtifactRepository(
         return createArtifactRepository(id, url, layout, snapshots, releases);
     }
 
+    @Override
     public ArtifactRepository createArtifactRepository(
             String id,
             String url,
@@ -118,10 +123,12 @@ public ArtifactRepository createArtifactRepository(
         return repository;
     }
 
+    @Override
     public void setGlobalUpdatePolicy(String updatePolicy) {
         globalUpdatePolicy = updatePolicy;
     }
 
+    @Override
     public void setGlobalChecksumPolicy(String checksumPolicy) {
         globalChecksumPolicy = checksumPolicy;
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/DefaultLegacyArtifactCollector.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/DefaultLegacyArtifactCollector.java
index a9e173c65d..f665730fa2 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/DefaultLegacyArtifactCollector.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/DefaultLegacyArtifactCollector.java
@@ -85,6 +85,7 @@ private void injectSession(ArtifactResolutionRequest request) {
         }
     }
 
+    @Override
     @SuppressWarnings("checkstyle:parameternumber")
     public ArtifactResolutionResult collect(
             Set<Artifact> artifacts,
@@ -104,6 +105,7 @@ public ArtifactResolutionResult collect(
                 artifacts, originatingArtifact, managedVersions, request, source, filter, listeners, conflictResolvers);
     }
 
+    @Override
     @SuppressWarnings("checkstyle:parameternumber")
     public ArtifactResolutionResult collect(
             Set<Artifact> artifacts,
@@ -714,6 +716,7 @@ private void fireEvent(
         }
     }
 
+    @Override
     @SuppressWarnings("checkstyle:parameternumber")
     public ArtifactResolutionResult collect(
             Set<Artifact> artifacts,
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/conflict/DefaultConflictResolverFactory.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/conflict/DefaultConflictResolverFactory.java
index cfe9cd4378..c99034c82b 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/conflict/DefaultConflictResolverFactory.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/conflict/DefaultConflictResolverFactory.java
@@ -53,6 +53,7 @@ public class DefaultConflictResolverFactory implements ConflictResolverFactory,
      * @see org.apache.maven.artifact.resolver.conflict.ConflictResolverFactory#getConflictResolver(java.lang.String)
      */
 
+    @Override
     public ConflictResolver getConflictResolver(String type) throws ConflictResolverNotFoundException {
         try {
             return (ConflictResolver) container.lookup(ConflictResolver.ROLE, type);
@@ -67,6 +68,7 @@ public ConflictResolver getConflictResolver(String type) throws ConflictResolver
      * @see org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable#contextualize(org.codehaus.plexus.context.Context)
      */
 
+    @Override
     public void contextualize(Context context) throws ContextException {
         container = (PlexusContainer) context.get(PlexusConstants.PLEXUS_KEY);
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/conflict/FarthestConflictResolver.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/conflict/FarthestConflictResolver.java
index b3dc4772a7..e9ec08c4e6 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/conflict/FarthestConflictResolver.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/conflict/FarthestConflictResolver.java
@@ -40,6 +40,7 @@ public class FarthestConflictResolver implements ConflictResolver {
      *      org.apache.maven.artifact.resolver.ResolutionNode)
      */
 
+    @Override
     public ResolutionNode resolveConflict(ResolutionNode node1, ResolutionNode node2) {
         return node1.getDepth() >= node2.getDepth() ? node1 : node2;
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/conflict/NearestConflictResolver.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/conflict/NearestConflictResolver.java
index 7d2bccc23e..6d513207bc 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/conflict/NearestConflictResolver.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/conflict/NearestConflictResolver.java
@@ -40,6 +40,7 @@ public class NearestConflictResolver implements ConflictResolver {
      *      org.apache.maven.artifact.resolver.ResolutionNode)
      */
 
+    @Override
     public ResolutionNode resolveConflict(ResolutionNode node1, ResolutionNode node2) {
         return node1.getDepth() <= node2.getDepth() ? node1 : node2;
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/conflict/NewestConflictResolver.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/conflict/NewestConflictResolver.java
index 10cadb204d..bf0572870a 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/conflict/NewestConflictResolver.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/conflict/NewestConflictResolver.java
@@ -43,6 +43,7 @@ public class NewestConflictResolver implements ConflictResolver {
      *      org.apache.maven.artifact.resolver.ResolutionNode)
      */
 
+    @Override
     public ResolutionNode resolveConflict(ResolutionNode node1, ResolutionNode node2) {
         try {
             ArtifactVersion version1 = node1.getArtifact().getSelectedVersion();
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/conflict/OldestConflictResolver.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/conflict/OldestConflictResolver.java
index bd15924812..fabc790e28 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/conflict/OldestConflictResolver.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/conflict/OldestConflictResolver.java
@@ -43,6 +43,7 @@ public class OldestConflictResolver implements ConflictResolver {
      *      org.apache.maven.artifact.resolver.ResolutionNode)
      */
 
+    @Override
     public ResolutionNode resolveConflict(ResolutionNode node1, ResolutionNode node2) {
         try {
             ArtifactVersion version1 = node1.getArtifact().getSelectedVersion();
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/transform/AbstractVersionTransformation.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/transform/AbstractVersionTransformation.java
index f86ea3bc58..c86e9cd136 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/transform/AbstractVersionTransformation.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/transform/AbstractVersionTransformation.java
@@ -51,6 +51,7 @@ public abstract class AbstractVersionTransformation extends AbstractLogEnabled i
     @Inject
     protected WagonManager wagonManager;
 
+    @Override
     public void transformForResolve(
             Artifact artifact, List<ArtifactRepository> remoteRepositories, ArtifactRepository localRepository)
             throws ArtifactResolutionException, ArtifactNotFoundException {
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/transform/DefaultArtifactTransformationManager.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/transform/DefaultArtifactTransformationManager.java
index 8eef94e9f3..3aa99257da 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/transform/DefaultArtifactTransformationManager.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/transform/DefaultArtifactTransformationManager.java
@@ -53,6 +53,7 @@ public DefaultArtifactTransformationManager(Map<String, ArtifactTransformation>
                 .collect(Collectors.toList());
     }
 
+    @Override
     public void transformForResolve(Artifact artifact, RepositoryRequest request)
             throws ArtifactResolutionException, ArtifactNotFoundException {
         for (ArtifactTransformation transform : artifactTransformations) {
@@ -60,6 +61,7 @@ public void transformForResolve(Artifact artifact, RepositoryRequest request)
         }
     }
 
+    @Override
     public void transformForResolve(
             Artifact artifact, List<ArtifactRepository> remoteRepositories, ArtifactRepository localRepository)
             throws ArtifactResolutionException, ArtifactNotFoundException {
@@ -68,6 +70,7 @@ public void transformForResolve(
         }
     }
 
+    @Override
     public void transformForInstall(Artifact artifact, ArtifactRepository localRepository)
             throws ArtifactInstallationException {
         for (ArtifactTransformation transform : artifactTransformations) {
@@ -75,6 +78,7 @@ public void transformForInstall(Artifact artifact, ArtifactRepository localRepos
         }
     }
 
+    @Override
     public void transformForDeployment(
             Artifact artifact, ArtifactRepository remoteRepository, ArtifactRepository localRepository)
             throws ArtifactDeploymentException {
@@ -83,6 +87,7 @@ public void transformForDeployment(
         }
     }
 
+    @Override
     public List<ArtifactTransformation> getArtifactTransformations() {
         return artifactTransformations;
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/transform/LatestArtifactTransformation.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/transform/LatestArtifactTransformation.java
index 53468900cb..065bad156a 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/transform/LatestArtifactTransformation.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/transform/LatestArtifactTransformation.java
@@ -37,6 +37,7 @@
 @Deprecated
 public class LatestArtifactTransformation extends AbstractVersionTransformation {
 
+    @Override
     public void transformForResolve(Artifact artifact, RepositoryRequest request)
             throws ArtifactResolutionException, ArtifactNotFoundException {
         if (Artifact.LATEST_VERSION.equals(artifact.getVersion())) {
@@ -54,15 +55,18 @@ public void transformForResolve(Artifact artifact, RepositoryRequest request)
         }
     }
 
+    @Override
     public void transformForInstall(Artifact artifact, ArtifactRepository localRepository) {
         // metadata is added via addPluginArtifactMetadata
     }
 
+    @Override
     public void transformForDeployment(
             Artifact artifact, ArtifactRepository remoteRepository, ArtifactRepository localRepository) {
         // metadata is added via addPluginArtifactMetadata
     }
 
+    @Override
     protected String constructVersion(Versioning versioning, String baseVersion) {
         return versioning.getLatest();
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/transform/SnapshotTransformation.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/transform/SnapshotTransformation.java
index 4f2e5058ab..3c14203b35 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/transform/SnapshotTransformation.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/legacy/resolver/transform/SnapshotTransformation.java
@@ -51,6 +51,7 @@ public class SnapshotTransformation extends AbstractVersionTransformation {
 
     private String deploymentTimestamp;
 
+    @Override
     public void transformForResolve(Artifact artifact, RepositoryRequest request) throws ArtifactResolutionException {
         // Only select snapshots that are unresolved (eg 1.0-SNAPSHOT, not 1.0-20050607.123456)
         if (artifact.isSnapshot() && artifact.getBaseVersion().equals(artifact.getVersion())) {
@@ -63,6 +64,7 @@ public void transformForResolve(Artifact artifact, RepositoryRequest request) th
         }
     }
 
+    @Override
     public void transformForInstall(Artifact artifact, ArtifactRepository localRepository) {
         if (artifact.isSnapshot()) {
             Snapshot snapshot = new Snapshot();
@@ -73,6 +75,7 @@ public void transformForInstall(Artifact artifact, ArtifactRepository localRepos
         }
     }
 
+    @Override
     public void transformForDeployment(
             Artifact artifact, ArtifactRepository remoteRepository, ArtifactRepository localRepository)
             throws ArtifactDeploymentException {
@@ -110,6 +113,7 @@ public String getDeploymentTimestamp() {
         return deploymentTimestamp;
     }
 
+    @Override
     protected String constructVersion(Versioning versioning, String baseVersion) {
         String version = null;
         Snapshot snapshot = versioning.getSnapshot();
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/metadata/ClasspathContainer.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/metadata/ClasspathContainer.java
index ad1937a4b1..4a0b44fb12 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/metadata/ClasspathContainer.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/metadata/ClasspathContainer.java
@@ -47,6 +47,7 @@ public ClasspathContainer(List<ArtifactMetadata> classpath, ArtifactScopeEnum sc
     }
 
     // -------------------------------------------------------------------------------------------
+    @Override
     public Iterator<ArtifactMetadata> iterator() {
         return classpath == null ? null : classpath.iterator();
     }
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/metadata/DefaultClasspathTransformation.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/metadata/DefaultClasspathTransformation.java
index 616467a0f9..e0b5fb64e6 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/metadata/DefaultClasspathTransformation.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/metadata/DefaultClasspathTransformation.java
@@ -41,6 +41,7 @@ public class DefaultClasspathTransformation implements ClasspathTransformation {
     GraphConflictResolver conflictResolver;
 
     // ----------------------------------------------------------------------------------------------------
+    @Override
     public ClasspathContainer transform(MetadataGraph dirtyGraph, ArtifactScopeEnum scope, boolean resolve)
             throws MetadataGraphTransformationException {
         try {
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/metadata/DefaultGraphConflictResolutionPolicy.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/metadata/DefaultGraphConflictResolutionPolicy.java
index 71a66895cd..fbb50979b6 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/metadata/DefaultGraphConflictResolutionPolicy.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/metadata/DefaultGraphConflictResolutionPolicy.java
@@ -44,6 +44,7 @@ public class DefaultGraphConflictResolutionPolicy implements GraphConflictResolu
     @Configuration(name = "newer-first", value = "true")
     private boolean newerFirst = true;
 
+    @Override
     public MetadataGraphEdge apply(MetadataGraphEdge e1, MetadataGraphEdge e2) {
         int depth1 = e1.getDepth();
         int depth2 = e2.getDepth();
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/metadata/DefaultGraphConflictResolver.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/metadata/DefaultGraphConflictResolver.java
index 60dc8a593c..35a0e06168 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/metadata/DefaultGraphConflictResolver.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/metadata/DefaultGraphConflictResolver.java
@@ -44,6 +44,7 @@ public class DefaultGraphConflictResolver implements GraphConflictResolver {
 
     // -------------------------------------------------------------------------------------
     // -------------------------------------------------------------------------------------
+    @Override
     public MetadataGraph resolveConflicts(MetadataGraph graph, ArtifactScopeEnum scope)
             throws GraphConflictResolutionException {
         if (policy == null) {
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/repository/metadata/MetadataGraphVertex.java b/compat/maven-compat/src/main/java/org/apache/maven/repository/metadata/MetadataGraphVertex.java
index aec802d7f8..a7eb1c0ef6 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/repository/metadata/MetadataGraphVertex.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/repository/metadata/MetadataGraphVertex.java
@@ -93,6 +93,7 @@ private static int compareStrings(String s1, String s2) {
     }
 
     // ---------------------------------------------------------------------
+    @Override
     public int compareTo(MetadataGraphVertex vertex) {
         if (vertex == null || vertex.getMd() == null) {
             return 1;
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/settings/DefaultMavenSettingsBuilder.java b/compat/maven-compat/src/main/java/org/apache/maven/settings/DefaultMavenSettingsBuilder.java
index 2df142e9b9..ec819401cd 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/settings/DefaultMavenSettingsBuilder.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/settings/DefaultMavenSettingsBuilder.java
@@ -48,6 +48,7 @@ public DefaultMavenSettingsBuilder(SettingsBuilder settingsBuilder) {
         this.settingsBuilder = settingsBuilder;
     }
 
+    @Override
     public Settings buildSettings() throws IOException, XmlPullParserException {
         File userSettingsFile = getFile(
                 "${user.home}/.m2/settings.xml", "user.home", MavenSettingsBuilder.ALT_USER_SETTINGS_XML_LOCATION);
@@ -55,10 +56,12 @@ public Settings buildSettings() throws IOException, XmlPullParserException {
         return buildSettings(userSettingsFile);
     }
 
+    @Override
     public Settings buildSettings(boolean useCachedSettings) throws IOException, XmlPullParserException {
         return buildSettings();
     }
 
+    @Override
     public Settings buildSettings(File userSettingsFile) throws IOException, XmlPullParserException {
         File globalSettingsFile = getFile(
                 "${maven.conf}/settings.xml", "maven.conf", MavenSettingsBuilder.ALT_GLOBAL_SETTINGS_XML_LOCATION);
@@ -70,6 +73,7 @@ public Settings buildSettings(File userSettingsFile) throws IOException, XmlPull
         return build(request);
     }
 
+    @Override
     public Settings buildSettings(File userSettingsFile, boolean useCachedSettings)
             throws IOException, XmlPullParserException {
         return buildSettings(userSettingsFile);
@@ -84,6 +88,7 @@ private Settings build(SettingsBuildingRequest request) throws IOException, XmlP
     }
 
     /** @since 2.1 */
+    @Override
     public Settings buildSettings(MavenExecutionRequest request) throws IOException, XmlPullParserException {
         SettingsBuildingRequest settingsRequest = new DefaultSettingsBuildingRequest();
         settingsRequest.setUserSettingsFile(request.getUserSettingsFile());
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/toolchain/DefaultToolchainsBuilder.java b/compat/maven-compat/src/main/java/org/apache/maven/toolchain/DefaultToolchainsBuilder.java
index e78fd2ca8a..edb1577017 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/toolchain/DefaultToolchainsBuilder.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/toolchain/DefaultToolchainsBuilder.java
@@ -39,6 +39,7 @@
 public class DefaultToolchainsBuilder implements ToolchainsBuilder {
     private final Logger logger = LoggerFactory.getLogger(getClass());
 
+    @Override
     public PersistedToolchains build(File userToolchainsFile) throws MisconfiguredToolchainException {
         PersistedToolchains toolchains = null;
 
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/toolchain/java/JavaToolchainFactory.java b/compat/maven-compat/src/main/java/org/apache/maven/toolchain/java/JavaToolchainFactory.java
index 2c0e24279c..f22884ce64 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/toolchain/java/JavaToolchainFactory.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/toolchain/java/JavaToolchainFactory.java
@@ -46,6 +46,7 @@
 public class JavaToolchainFactory implements ToolchainFactory {
     private final Logger logger = LoggerFactory.getLogger(getClass());
 
+    @Override
     public ToolchainPrivate createToolchain(ToolchainModel model) throws MisconfiguredToolchainException {
         if (model == null) {
             return null;
@@ -95,6 +96,7 @@ public ToolchainPrivate createToolchain(ToolchainModel model) throws Misconfigur
         return jtc;
     }
 
+    @Override
     public ToolchainPrivate createDefaultToolchain() {
         // not sure it's necessary to provide a default toolchain here.
         // only version can be eventually supplied.
diff --git a/compat/maven-compat/src/main/java/org/apache/maven/toolchain/java/JavaToolchainImpl.java b/compat/maven-compat/src/main/java/org/apache/maven/toolchain/java/JavaToolchainImpl.java
index 0f6fc5c25d..661ffa6424 100644
--- a/compat/maven-compat/src/main/java/org/apache/maven/toolchain/java/JavaToolchainImpl.java
+++ b/compat/maven-compat/src/main/java/org/apache/maven/toolchain/java/JavaToolchainImpl.java
@@ -51,10 +51,12 @@ public void setJavaHome(String javaHome) {
         this.javaHome = javaHome;
     }
 
+    @Override
     public String toString() {
         return "JDK[" + getJavaHome() + "]";
     }
 
+    @Override
     public String findTool(String toolName) {
         Path toRet = findTool(toolName, Paths.get(getJavaHome()).normalize());
         if (toRet != null) {
diff --git a/compat/maven-compat/src/test/java/org/apache/maven/ProjectDependenciesResolverTest.java b/compat/maven-compat/src/test/java/org/apache/maven/ProjectDependenciesResolverTest.java
index 5cc242c096..723ef0111d 100644
--- a/compat/maven-compat/src/test/java/org/apache/maven/ProjectDependenciesResolverTest.java
+++ b/compat/maven-compat/src/test/java/org/apache/maven/ProjectDependenciesResolverTest.java
@@ -41,6 +41,7 @@ class ProjectDependenciesResolverTest extends AbstractCoreMavenComponentTestCase
     @Inject
     private ProjectDependenciesResolver resolver;
 
+    @Override
     protected String getProjectsDirectory() {
         return "src/test/projects/project-dependencies-resolver";
     }
diff --git a/compat/maven-compat/src/test/java/org/apache/maven/artifact/deployer/SimpleArtifactMetadataSource.java b/compat/maven-compat/src/test/java/org/apache/maven/artifact/deployer/SimpleArtifactMetadataSource.java
index f3ffe61b3f..75d77f3606 100644
--- a/compat/maven-compat/src/test/java/org/apache/maven/artifact/deployer/SimpleArtifactMetadataSource.java
+++ b/compat/maven-compat/src/test/java/org/apache/maven/artifact/deployer/SimpleArtifactMetadataSource.java
@@ -36,21 +36,25 @@
 @Singleton
 @Deprecated
 public class SimpleArtifactMetadataSource implements ArtifactMetadataSource {
+    @Override
     public ResolutionGroup retrieve(
             Artifact artifact, ArtifactRepository localRepository, List<ArtifactRepository> remoteRepositories) {
         throw new UnsupportedOperationException("Cannot retrieve metadata in this test case");
     }
 
+    @Override
     public List<ArtifactVersion> retrieveAvailableVersions(
             Artifact artifact, ArtifactRepository localRepository, List<ArtifactRepository> remoteRepositories) {
         return Collections.singletonList(new DefaultArtifactVersion("10.1.3"));
     }
 
+    @Override
     public List<ArtifactVersion> retrieveAvailableVersionsFromDeploymentRepository(
             Artifact artifact, ArtifactRepository localRepository, ArtifactRepository remoteRepository) {
         return Collections.singletonList(new DefaultArtifactVersion("10.1.3"));
     }
 
+    @Override
     public ResolutionGroup retrieve(MetadataResolutionRequest request) {
         return retrieve(request.getArtifact(), request.getLocalRepository(), request.getRemoteRepositories());
     }
diff --git a/compat/maven-compat/src/test/java/org/apache/maven/artifact/metadata/TestMetadataSource.java b/compat/maven-compat/src/test/java/org/apache/maven/artifact/metadata/TestMetadataSource.java
index 6747ac894e..dd6e2ef916 100644
--- a/compat/maven-compat/src/test/java/org/apache/maven/artifact/metadata/TestMetadataSource.java
+++ b/compat/maven-compat/src/test/java/org/apache/maven/artifact/metadata/TestMetadataSource.java
@@ -39,6 +39,7 @@ public class TestMetadataSource implements ArtifactMetadataSource {
     @Inject
     private ArtifactFactory factory;
 
+    @Override
     public ResolutionGroup retrieve(
             Artifact artifact, ArtifactRepository localRepository, List<ArtifactRepository> remoteRepositories)
             throws ArtifactMetadataRetrievalException {
@@ -67,22 +68,26 @@ public ResolutionGroup retrieve(
         return new ResolutionGroup(artifact, dependencies, remoteRepositories);
     }
 
+    @Override
     public List<ArtifactVersion> retrieveAvailableVersions(
             Artifact artifact, ArtifactRepository localRepository, List<ArtifactRepository> remoteRepositories)
             throws ArtifactMetadataRetrievalException {
         throw new UnsupportedOperationException("Cannot get available versions in this test case");
     }
 
+    @Override
     public List<ArtifactVersion> retrieveAvailableVersionsFromDeploymentRepository(
             Artifact artifact, ArtifactRepository localRepository, ArtifactRepository remoteRepository)
             throws ArtifactMetadataRetrievalException {
         throw new UnsupportedOperationException("Cannot get available versions in this test case");
     }
 
+    @Override
     public ResolutionGroup retrieve(MetadataResolutionRequest request) throws ArtifactMetadataRetrievalException {
         return retrieve(request.getArtifact(), request.getLocalRepository(), request.getRemoteRepositories());
     }
 
+    @Override
     public List<ArtifactVersion> retrieveAvailableVersions(MetadataResolutionRequest request)
             throws ArtifactMetadataRetrievalException {
         return retrieveAvailableVersions(
diff --git a/compat/maven-compat/src/test/java/org/apache/maven/artifact/resolver/TestFileWagon.java b/compat/maven-compat/src/test/java/org/apache/maven/artifact/resolver/TestFileWagon.java
index d93edab313..f936953763 100644
--- a/compat/maven-compat/src/test/java/org/apache/maven/artifact/resolver/TestFileWagon.java
+++ b/compat/maven-compat/src/test/java/org/apache/maven/artifact/resolver/TestFileWagon.java
@@ -42,6 +42,7 @@ protected void getTransfer(Resource resource, File destination, InputStream inpu
         super.getTransfer(resource, destination, input, closeInput, maxSize);
     }
 
+    @Override
     public void get(String resourceName, File destination)
             throws TransferFailedException, ResourceDoesNotExistException, AuthorizationException {
         addTransfer("get " + resourceName);
@@ -59,6 +60,7 @@ private void addTransfer(String resourceName) {
         }
     }
 
+    @Override
     public boolean getIfNewer(String resourceName, File destination, long timestamp)
             throws TransferFailedException, ResourceDoesNotExistException, AuthorizationException {
         if (!insideGet) {
@@ -67,6 +69,7 @@ public boolean getIfNewer(String resourceName, File destination, long timestamp)
         return super.getIfNewer(resourceName, destination, timestamp);
     }
 
+    @Override
     public void addTransferListener(TransferListener listener) {
         if (listener instanceof TestTransferListener t) {
             testTransferListener = t;
diff --git a/compat/maven-compat/src/test/java/org/apache/maven/project/ClasspathArtifactResolver.java b/compat/maven-compat/src/test/java/org/apache/maven/project/ClasspathArtifactResolver.java
index a95bcdf091..f8c532c6c7 100644
--- a/compat/maven-compat/src/test/java/org/apache/maven/project/ClasspathArtifactResolver.java
+++ b/compat/maven-compat/src/test/java/org/apache/maven/project/ClasspathArtifactResolver.java
@@ -44,6 +44,7 @@
 @Deprecated
 public class ClasspathArtifactResolver implements ArtifactResolver {
 
+    @Override
     public List<ArtifactResult> resolveArtifacts(
             RepositorySystemSession session, Collection<? extends ArtifactRequest> requests)
             throws ArtifactResolutionException {
@@ -73,6 +74,7 @@ public List<ArtifactResult> resolveArtifacts(
         return results;
     }
 
+    @Override
     public ArtifactResult resolveArtifact(RepositorySystemSession session, ArtifactRequest request)
             throws ArtifactResolutionException {
         return resolveArtifacts(session, Collections.singleton(request)).get(0);
diff --git a/compat/maven-compat/src/test/java/org/apache/maven/project/EmptyLifecycleExecutor.java b/compat/maven-compat/src/test/java/org/apache/maven/project/EmptyLifecycleExecutor.java
index 44900c5cd2..045de59061 100644
--- a/compat/maven-compat/src/test/java/org/apache/maven/project/EmptyLifecycleExecutor.java
+++ b/compat/maven-compat/src/test/java/org/apache/maven/project/EmptyLifecycleExecutor.java
@@ -39,16 +39,20 @@
 @Deprecated
 public class EmptyLifecycleExecutor implements LifecycleExecutor {
 
+    @Override
     public MavenExecutionPlan calculateExecutionPlan(MavenSession session, String... tasks) {
         return new MavenExecutionPlan(null, new DefaultLifecycles());
     }
 
+    @Override
     public MavenExecutionPlan calculateExecutionPlan(MavenSession session, boolean setup, String... tasks) {
         return new MavenExecutionPlan(null, new DefaultLifecycles());
     }
 
+    @Override
     public void execute(MavenSession session) {}
 
+    @Override
     public Set<Plugin> getPluginsBoundByDefaultToAllLifecycles(String packaging) {
         Set<Plugin> plugins;
 
@@ -85,8 +89,10 @@ private Plugin newPlugin(String artifactId, String... goals) {
         return plugin;
     }
 
+    @Override
     public void calculateForkedExecutions(MojoExecution mojoExecution, MavenSession session) {}
 
+    @Override
     public List<MavenProject> executeForkedExecutions(MojoExecution mojoExecution, MavenSession session) {
         return Collections.emptyList();
     }
diff --git a/compat/maven-compat/src/test/java/org/apache/maven/project/LegacyLocalRepositoryManager.java b/compat/maven-compat/src/test/java/org/apache/maven/project/LegacyLocalRepositoryManager.java
index 4b489783b0..2f42888b5f 100644
--- a/compat/maven-compat/src/test/java/org/apache/maven/project/LegacyLocalRepositoryManager.java
+++ b/compat/maven-compat/src/test/java/org/apache/maven/project/LegacyLocalRepositoryManager.java
@@ -44,10 +44,12 @@ public LegacyLocalRepositoryManager(File basedir) {
         this.repository = new LocalRepository(basedir.getAbsoluteFile(), "legacy");
     }
 
+    @Override
     public LocalRepository getRepository() {
         return repository;
     }
 
+    @Override
     public String getPathForLocalArtifact(Artifact artifact) {
         StringBuilder path = new StringBuilder(128);
 
@@ -66,14 +68,17 @@ public String getPathForLocalArtifact(Artifact artifact) {
         return path.toString();
     }
 
+    @Override
     public String getPathForRemoteArtifact(Artifact artifact, RemoteRepository repository, String context) {
         return getPathForLocalArtifact(artifact);
     }
 
+    @Override
     public String getPathForLocalMetadata(Metadata metadata) {
         return getPath(metadata, "local");
     }
 
+    @Override
     public String getPathForRemoteMetadata(Metadata metadata, RemoteRepository repository, String context) {
         return getPath(metadata, getRepositoryKey(repository, context));
     }
@@ -113,6 +118,7 @@ private String insertRepositoryKey(String filename, String repositoryKey) {
         return result;
     }
 
+    @Override
     public LocalArtifactResult find(RepositorySystemSession session, LocalArtifactRequest request) {
         String path = getPathForLocalArtifact(request.getArtifact());
         File file = new File(getRepository().getBasedir(), path);
@@ -126,10 +132,12 @@ public LocalArtifactResult find(RepositorySystemSession session, LocalArtifactRe
         return result;
     }
 
+    @Override
     public void add(RepositorySystemSession session, LocalArtifactRegistration request) {
         // noop
     }
 
+    @Override
     public LocalMetadataResult find(RepositorySystemSession session, LocalMetadataRequest request) {
         LocalMetadataResult result = new LocalMetadataResult(request);
 
@@ -153,10 +161,12 @@ public LocalMetadataResult find(RepositorySystemSession session, LocalMetadataRe
         return result;
     }
 
+    @Override
     public void add(RepositorySystemSession session, LocalMetadataRegistration request) {
         // noop
     }
 
+    @Override
     public String toString() {
         return String.valueOf(getRepository());
     }
diff --git a/compat/maven-compat/src/test/java/org/apache/maven/repository/legacy/DefaultWagonManagerTest.java b/compat/maven-compat/src/test/java/org/apache/maven/repository/legacy/DefaultWagonManagerTest.java
index 3d2c596ee8..903a0f81b7 100644
--- a/compat/maven-compat/src/test/java/org/apache/maven/repository/legacy/DefaultWagonManagerTest.java
+++ b/compat/maven-compat/src/test/java/org/apache/maven/repository/legacy/DefaultWagonManagerTest.java
@@ -299,18 +299,22 @@ private void assertWagon(String protocol) throws Exception {
     }
 
     private final class ArtifactRepositoryLayoutStub implements ArtifactRepositoryLayout {
+        @Override
         public String getId() {
             return "test";
         }
 
+        @Override
         public String pathOfRemoteRepositoryMetadata(ArtifactMetadata metadata) {
             return "path";
         }
 
+        @Override
         public String pathOfLocalRepositoryMetadata(ArtifactMetadata metadata, ArtifactRepository repository) {
             return "path";
         }
 
+        @Override
         public String pathOf(Artifact artifact) {
             return "path";
         }
diff --git a/compat/maven-compat/src/test/java/org/apache/maven/repository/legacy/resolver/DefaultArtifactCollectorTest.java b/compat/maven-compat/src/test/java/org/apache/maven/repository/legacy/resolver/DefaultArtifactCollectorTest.java
index f3cf581353..641d3034df 100644
--- a/compat/maven-compat/src/test/java/org/apache/maven/repository/legacy/resolver/DefaultArtifactCollectorTest.java
+++ b/compat/maven-compat/src/test/java/org/apache/maven/repository/legacy/resolver/DefaultArtifactCollectorTest.java
@@ -828,6 +828,7 @@ private class Source implements ArtifactMetadataSource {
 
         private Map<String, List<ArtifactVersion>> versions = new HashMap<>();
 
+        @Override
         public ResolutionGroup retrieve(
                 Artifact artifact, ArtifactRepository localRepository, List<ArtifactRepository> remoteRepositories)
                 throws ArtifactMetadataRetrievalException {
@@ -901,12 +902,14 @@ public void addArtifact(ArtifactSpec spec) {
             }
         }
 
+        @Override
         public List<ArtifactVersion> retrieveAvailableVersions(
                 Artifact artifact, ArtifactRepository localRepository, List<ArtifactRepository> remoteRepositories)
                 throws ArtifactMetadataRetrievalException {
             return retrieveAvailableVersions(artifact);
         }
 
+        @Override
         public List<ArtifactVersion> retrieveAvailableVersionsFromDeploymentRepository(
                 Artifact artifact, ArtifactRepository localRepository, ArtifactRepository remoteRepository)
                 throws ArtifactMetadataRetrievalException {
@@ -921,10 +924,12 @@ private List<ArtifactVersion> retrieveAvailableVersions(Artifact artifact) {
             return artifactVersions;
         }
 
+        @Override
         public ResolutionGroup retrieve(MetadataResolutionRequest request) throws ArtifactMetadataRetrievalException {
             return retrieve(request.getArtifact(), request.getLocalRepository(), request.getRemoteRepositories());
         }
 
+        @Override
         public List<ArtifactVersion> retrieveAvailableVersions(MetadataResolutionRequest request)
                 throws ArtifactMetadataRetrievalException {
             return retrieveAvailableVersions(
diff --git a/compat/maven-compat/src/test/java/org/apache/maven/repository/metadata/TestMetadataSource.java b/compat/maven-compat/src/test/java/org/apache/maven/repository/metadata/TestMetadataSource.java
index 5681bba45f..dd11b2a955 100644
--- a/compat/maven-compat/src/test/java/org/apache/maven/repository/metadata/TestMetadataSource.java
+++ b/compat/maven-compat/src/test/java/org/apache/maven/repository/metadata/TestMetadataSource.java
@@ -42,6 +42,7 @@ public class TestMetadataSource implements ArtifactMetadataSource {
     @Inject
     private ArtifactFactory factory;
 
+    @Override
     public ResolutionGroup retrieve(
             Artifact artifact, ArtifactRepository localRepository, List<ArtifactRepository> remoteRepositories)
             throws ArtifactMetadataRetrievalException {
@@ -70,18 +71,21 @@ public ResolutionGroup retrieve(
         return new ResolutionGroup(artifact, dependencies, remoteRepositories);
     }
 
+    @Override
     public List<ArtifactVersion> retrieveAvailableVersions(
             Artifact artifact, ArtifactRepository localRepository, List<ArtifactRepository> remoteRepositories)
             throws ArtifactMetadataRetrievalException {
         throw new UnsupportedOperationException("Cannot get available versions in this test case");
     }
 
+    @Override
     public List<ArtifactVersion> retrieveAvailableVersionsFromDeploymentRepository(
             Artifact artifact, ArtifactRepository localRepository, ArtifactRepository remoteRepository)
             throws ArtifactMetadataRetrievalException {
         throw new UnsupportedOperationException("Cannot get available versions in this test case");
     }
 
+    @Override
     public ResolutionGroup retrieve(MetadataResolutionRequest request) throws ArtifactMetadataRetrievalException {
         return retrieve(request.getArtifact(), request.getLocalRepository(), request.getRemoteRepositories());
     }
diff --git a/compat/maven-embedder/src/main/java/org/apache/maven/cli/event/DefaultEventSpyContext.java b/compat/maven-embedder/src/main/java/org/apache/maven/cli/event/DefaultEventSpyContext.java
index d241199407..6732e5cff4 100644
--- a/compat/maven-embedder/src/main/java/org/apache/maven/cli/event/DefaultEventSpyContext.java
+++ b/compat/maven-embedder/src/main/java/org/apache/maven/cli/event/DefaultEventSpyContext.java
@@ -31,6 +31,7 @@ public class DefaultEventSpyContext implements EventSpy.Context {
 
     private final Map<String, Object> data = new HashMap<>();
 
+    @Override
     public Map<String, Object> getData() {
         return data;
     }
diff --git a/compat/maven-embedder/src/main/java/org/apache/maven/cli/logging/Slf4jStdoutLogger.java b/compat/maven-embedder/src/main/java/org/apache/maven/cli/logging/Slf4jStdoutLogger.java
index 7433436dcb..8e80c8a5b3 100644
--- a/compat/maven-embedder/src/main/java/org/apache/maven/cli/logging/Slf4jStdoutLogger.java
+++ b/compat/maven-embedder/src/main/java/org/apache/maven/cli/logging/Slf4jStdoutLogger.java
@@ -45,11 +45,13 @@ public Slf4jStdoutLogger(PrintStream out) {
     //
     // These are the only methods we need in our primordial logger
     //
+    @Override
     public void error(String msg) {
         out.print(ERROR);
         out.println(msg);
     }
 
+    @Override
     public void error(String msg, Throwable t) {
         error(msg);
 
@@ -61,143 +63,202 @@ public void error(String msg, Throwable t) {
     //
     // Don't need any of this
     //
+    @Override
     public String getName() {
         return null;
     }
 
+    @Override
     public boolean isTraceEnabled() {
         return false;
     }
 
+    @Override
     public void trace(String msg) {}
 
+    @Override
     public void trace(String format, Object arg) {}
 
+    @Override
     public void trace(String format, Object arg1, Object arg2) {}
 
+    @Override
     public void trace(String format, Object... arguments) {}
 
+    @Override
     public void trace(String msg, Throwable t) {}
 
+    @Override
     public boolean isTraceEnabled(Marker marker) {
         return false;
     }
 
+    @Override
     public void trace(Marker marker, String msg) {}
 
+    @Override
     public void trace(Marker marker, String format, Object arg) {}
 
+    @Override
     public void trace(Marker marker, String format, Object arg1, Object arg2) {}
 
+    @Override
     public void trace(Marker marker, String format, Object... argArray) {}
 
+    @Override
     public void trace(Marker marker, String msg, Throwable t) {}
 
+    @Override
     public boolean isDebugEnabled() {
         return false;
     }
 
+    @Override
     public void debug(String msg) {}
 
+    @Override
     public void debug(String format, Object arg) {}
 
+    @Override
     public void debug(String format, Object arg1, Object arg2) {}
 
+    @Override
     public void debug(String format, Object... arguments) {}
 
+    @Override
     public void debug(String msg, Throwable t) {}
 
+    @Override
     public boolean isDebugEnabled(Marker marker) {
         return false;
     }
 
+    @Override
     public void debug(Marker marker, String msg) {}
 
+    @Override
     public void debug(Marker marker, String format, Object arg) {}
 
+    @Override
     public void debug(Marker marker, String format, Object arg1, Object arg2) {}
 
+    @Override
     public void debug(Marker marker, String format, Object... arguments) {}
 
+    @Override
     public void debug(Marker marker, String msg, Throwable t) {}
 
+    @Override
     public boolean isInfoEnabled() {
         return false;
     }
 
+    @Override
     public void info(String msg) {}
 
+    @Override
     public void info(String format, Object arg) {}
 
+    @Override
     public void info(String format, Object arg1, Object arg2) {}
 
+    @Override
     public void info(String format, Object... arguments) {}
 
+    @Override
     public void info(String msg, Throwable t) {}
 
+    @Override
     public boolean isInfoEnabled(Marker marker) {
         return false;
     }
 
+    @Override
     public void info(Marker marker, String msg) {}
 
+    @Override
     public void info(Marker marker, String format, Object arg) {}
 
+    @Override
     public void info(Marker marker, String format, Object arg1, Object arg2) {}
 
+    @Override
     public void info(Marker marker, String format, Object... arguments) {}
 
+    @Override
     public void info(Marker marker, String msg, Throwable t) {}
 
+    @Override
     public boolean isWarnEnabled() {
         return false;
     }
 
+    @Override
     public void warn(String msg) {}
 
+    @Override
     public void warn(String format, Object arg) {}
 
+    @Override
     public void warn(String format, Object... arguments) {}
 
+    @Override
     public void warn(String format, Object arg1, Object arg2) {}
 
+    @Override
     public void warn(String msg, Throwable t) {}
 
+    @Override
     public boolean isWarnEnabled(Marker marker) {
         return false;
     }
 
+    @Override
     public void warn(Marker marker, String msg) {}
 
+    @Override
     public void warn(Marker marker, String format, Object arg) {}
 
+    @Override
     public void warn(Marker marker, String format, Object arg1, Object arg2) {}
 
+    @Override
     public void warn(Marker marker, String format, Object... arguments) {}
 
+    @Override
     public void warn(Marker marker, String msg, Throwable t) {}
 
+    @Override
     public boolean isErrorEnabled() {
         return false;
     }
 
+    @Override
     public void error(String format, Object arg) {}
 
+    @Override
     public void error(String format, Object arg1, Object arg2) {}
 
+    @Override
     public void error(String format, Object... arguments) {}
 
+    @Override
     public boolean isErrorEnabled(Marker marker) {
         return false;
     }
 
+    @Override
     public void error(Marker marker, String msg) {}
 
+    @Override
     public void error(Marker marker, String format, Object arg) {}
 
+    @Override
     public void error(Marker marker, String format, Object arg1, Object arg2) {}
 
+    @Override
     public void error(Marker marker, String format, Object... arguments) {}
 
+    @Override
     public void error(Marker marker, String msg, Throwable t) {}
 }
diff --git a/compat/maven-embedder/src/main/java/org/apache/maven/cli/props/MavenProperties.java b/compat/maven-embedder/src/main/java/org/apache/maven/cli/props/MavenProperties.java
index 606eb65b5c..63c6c09d4b 100644
--- a/compat/maven-embedder/src/main/java/org/apache/maven/cli/props/MavenProperties.java
+++ b/compat/maven-embedder/src/main/java/org/apache/maven/cli/props/MavenProperties.java
@@ -193,21 +193,26 @@ public Iterator<Entry<String, String>> iterator() {
                     final Iterator<Entry<String, String>> keyIterator =
                             storage.entrySet().iterator();
 
+                    @Override
                     public boolean hasNext() {
                         return keyIterator.hasNext();
                     }
 
+                    @Override
                     public Entry<String, String> next() {
                         final Entry<String, String> entry = keyIterator.next();
                         return new Entry<String, String>() {
+                            @Override
                             public String getKey() {
                                 return entry.getKey();
                             }
 
+                            @Override
                             public String getValue() {
                                 return entry.getValue();
                             }
 
+                            @Override
                             public String setValue(String value) {
                                 String old = entry.setValue(value);
                                 if (old == null || !old.equals(value)) {
@@ -221,6 +226,7 @@ public String setValue(String value) {
                         };
                     }
 
+                    @Override
                     public void remove() {
                         keyIterator.remove();
                     }
diff --git a/compat/maven-embedder/src/test/java/org/apache/maven/cli/CLIManagerDocumentationTest.java b/compat/maven-embedder/src/test/java/org/apache/maven/cli/CLIManagerDocumentationTest.java
index 1a531085cf..b5b9da97da 100644
--- a/compat/maven-embedder/src/test/java/org/apache/maven/cli/CLIManagerDocumentationTest.java
+++ b/compat/maven-embedder/src/test/java/org/apache/maven/cli/CLIManagerDocumentationTest.java
@@ -42,6 +42,7 @@ class CLIManagerDocumentationTest {
     private static final String LS = System.lineSeparator();
 
     private static class OptionComparator implements Comparator<Option> {
+        @Override
         public int compare(Option opt1, Option opt2) {
             String s1 = opt1.getOpt() != null ? opt1.getOpt() : opt1.getLongOpt();
             String s2 = opt2.getOpt() != null ? opt2.getOpt() : opt2.getLongOpt();
diff --git a/compat/maven-model-builder/src/main/java/org/apache/maven/model/interpolation/ObjectBasedValueSource.java b/compat/maven-model-builder/src/main/java/org/apache/maven/model/interpolation/ObjectBasedValueSource.java
index 406703071c..43693df9f4 100644
--- a/compat/maven-model-builder/src/main/java/org/apache/maven/model/interpolation/ObjectBasedValueSource.java
+++ b/compat/maven-model-builder/src/main/java/org/apache/maven/model/interpolation/ObjectBasedValueSource.java
@@ -71,6 +71,7 @@ public ObjectBasedValueSource(Object root) {
      * <p><b>NOTE:</b> The object-graph navigation actually takes place via the
      * {@link ReflectionValueExtractor} class.</p>
      */
+    @Override
     public Object getValue(String expression) {
         if (expression == null || expression.trim().isEmpty()) {
             return null;
diff --git a/compat/maven-model-builder/src/main/java/org/apache/maven/model/interpolation/PrefixedObjectValueSource.java b/compat/maven-model-builder/src/main/java/org/apache/maven/model/interpolation/PrefixedObjectValueSource.java
index a58155e14f..22638c613c 100644
--- a/compat/maven-model-builder/src/main/java/org/apache/maven/model/interpolation/PrefixedObjectValueSource.java
+++ b/compat/maven-model-builder/src/main/java/org/apache/maven/model/interpolation/PrefixedObjectValueSource.java
@@ -59,6 +59,7 @@ public PrefixedObjectValueSource(List<String> possiblePrefixes, Object root, boo
     /**
      * {@inheritDoc}
      */
+    @Override
     public String getLastExpression() {
         return ((QueryEnabledValueSource) getDelegate()).getLastExpression();
     }
diff --git a/compat/maven-model-builder/src/main/java/org/apache/maven/model/root/DefaultRootLocator.java b/compat/maven-model-builder/src/main/java/org/apache/maven/model/root/DefaultRootLocator.java
index 671b9f24ef..d248ec94f8 100644
--- a/compat/maven-model-builder/src/main/java/org/apache/maven/model/root/DefaultRootLocator.java
+++ b/compat/maven-model-builder/src/main/java/org/apache/maven/model/root/DefaultRootLocator.java
@@ -35,6 +35,7 @@
 @Deprecated(since = "4.0.0")
 public class DefaultRootLocator implements RootLocator {
 
+    @Override
     public boolean isRootDirectory(Path dir) {
         if (Files.isDirectory(dir.resolve(".mvn"))) {
             return true;
diff --git a/compat/maven-model-builder/src/test/java/org/apache/maven/model/building/SimpleProblemCollector.java b/compat/maven-model-builder/src/test/java/org/apache/maven/model/building/SimpleProblemCollector.java
index 31bcd9be67..dee5042508 100644
--- a/compat/maven-model-builder/src/test/java/org/apache/maven/model/building/SimpleProblemCollector.java
+++ b/compat/maven-model-builder/src/test/java/org/apache/maven/model/building/SimpleProblemCollector.java
@@ -59,6 +59,7 @@ public List<String> getFatals() {
         return fatals;
     }
 
+    @Override
     public void add(ModelProblemCollectorRequest req) {
         switch (req.getSeverity()) {
             case FATAL:
diff --git a/compat/maven-model-builder/src/test/java/org/apache/maven/model/interpolation/StringVisitorModelInterpolatorTest.java b/compat/maven-model-builder/src/test/java/org/apache/maven/model/interpolation/StringVisitorModelInterpolatorTest.java
index 5df6c1673c..1d1735fe36 100644
--- a/compat/maven-model-builder/src/test/java/org/apache/maven/model/interpolation/StringVisitorModelInterpolatorTest.java
+++ b/compat/maven-model-builder/src/test/java/org/apache/maven/model/interpolation/StringVisitorModelInterpolatorTest.java
@@ -20,6 +20,7 @@
 
 @Deprecated
 public class StringVisitorModelInterpolatorTest extends AbstractModelInterpolatorTest {
+    @Override
     protected ModelInterpolator createInterpolator() {
         return new StringVisitorModelInterpolator().setVersionPropertiesProcessor(new DefaultModelVersionProcessor());
     }
diff --git a/compat/maven-model/src/main/java/org/apache/maven/model/InputLocation.java b/compat/maven-model/src/main/java/org/apache/maven/model/InputLocation.java
index 82bfc9162b..70ef9bb688 100644
--- a/compat/maven-model/src/main/java/org/apache/maven/model/InputLocation.java
+++ b/compat/maven-model/src/main/java/org/apache/maven/model/InputLocation.java
@@ -142,6 +142,7 @@ public int getLineNumber() {
      * @param key
      * @return InputLocation
      */
+    @Override
     public InputLocation getLocation(Object key) {
         if (key instanceof String string) {
             switch (string) {
@@ -172,6 +173,7 @@ public java.util.Map<Object, InputLocation> getLocations() {
      * @param key
      * @param location
      */
+    @Override
     public void setLocation(Object key, InputLocation location) {
         if (key instanceof String string) {
             switch (string) {
diff --git a/compat/maven-model/src/main/java/org/apache/maven/model/io/xpp3/MavenXpp3WriterEx.java b/compat/maven-model/src/main/java/org/apache/maven/model/io/xpp3/MavenXpp3WriterEx.java
index 09fbbae142..a9d8efab04 100644
--- a/compat/maven-model/src/main/java/org/apache/maven/model/io/xpp3/MavenXpp3WriterEx.java
+++ b/compat/maven-model/src/main/java/org/apache/maven/model/io/xpp3/MavenXpp3WriterEx.java
@@ -44,6 +44,7 @@ public MavenXpp3WriterEx() {
      *
      * @param fileComment a fileComment object.
      */
+    @Override
     public void setFileComment(String fileComment) {
         super.setFileComment(fileComment);
     } // -- void setFileComment( String )
@@ -53,6 +54,7 @@ public void setFileComment(String fileComment) {
      *
      * @param stringFormatter
      */
+    @Override
     public void setStringFormatter(InputLocation.StringFormatter stringFormatter) {
         super.setStringFormatter(stringFormatter);
     } // -- void setStringFormatter( InputLocation.StringFormatter )
@@ -64,6 +66,7 @@ public void setStringFormatter(InputLocation.StringFormatter stringFormatter) {
      * @param model a model object.
      * @throws IOException java.io.IOException if any.
      */
+    @Override
     public void write(Writer writer, Model model) throws IOException {
         super.write(writer, model);
     } // -- void write( Writer, Model )
@@ -75,6 +78,7 @@ public void write(Writer writer, Model model) throws IOException {
      * @param model a model object.
      * @throws IOException java.io.IOException if any.
      */
+    @Override
     public void write(OutputStream stream, Model model) throws IOException {
         super.write(stream, model);
     } // -- void write( OutputStream, Model )
diff --git a/compat/maven-plugin-api/src/main/java/org/apache/maven/monitor/logging/DefaultLog.java b/compat/maven-plugin-api/src/main/java/org/apache/maven/monitor/logging/DefaultLog.java
index d36b6eba3b..644529814c 100644
--- a/compat/maven-plugin-api/src/main/java/org/apache/maven/monitor/logging/DefaultLog.java
+++ b/compat/maven-plugin-api/src/main/java/org/apache/maven/monitor/logging/DefaultLog.java
@@ -32,6 +32,7 @@ public DefaultLog(Logger logger) {
         this.logger = logger;
     }
 
+    @Override
     public void debug(CharSequence content) {
         logger.debug(toString(content));
     }
@@ -44,62 +45,77 @@ private String toString(CharSequence content) {
         }
     }
 
+    @Override
     public void debug(CharSequence content, Throwable error) {
         logger.debug(toString(content), error);
     }
 
+    @Override
     public void debug(Throwable error) {
         logger.debug("", error);
     }
 
+    @Override
     public void info(CharSequence content) {
         logger.info(toString(content));
     }
 
+    @Override
     public void info(CharSequence content, Throwable error) {
         logger.info(toString(content), error);
     }
 
+    @Override
     public void info(Throwable error) {
         logger.info("", error);
     }
 
+    @Override
     public void warn(CharSequence content) {
         logger.warn(toString(content));
     }
 
+    @Override
     public void warn(CharSequence content, Throwable error) {
         logger.warn(toString(content), error);
     }
 
+    @Override
     public void warn(Throwable error) {
         logger.warn("", error);
     }
 
+    @Override
     public void error(CharSequence content) {
         logger.error(toString(content));
     }
 
+    @Override
     public void error(CharSequence content, Throwable error) {
         logger.error(toString(content), error);
     }
 
+    @Override
     public void error(Throwable error) {
         logger.error("", error);
     }
 
+    @Override
     public boolean isDebugEnabled() {
         return logger.isDebugEnabled();
     }
 
+    @Override
     public boolean isInfoEnabled() {
         return logger.isInfoEnabled();
     }
 
+    @Override
     public boolean isWarnEnabled() {
         return logger.isWarnEnabled();
     }
 
+    @Override
     public boolean isErrorEnabled() {
         return logger.isErrorEnabled();
     }
diff --git a/compat/maven-plugin-api/src/main/java/org/apache/maven/plugin/descriptor/MojoDescriptor.java b/compat/maven-plugin-api/src/main/java/org/apache/maven/plugin/descriptor/MojoDescriptor.java
index 2a43008c10..0b5b800038 100644
--- a/compat/maven-plugin-api/src/main/java/org/apache/maven/plugin/descriptor/MojoDescriptor.java
+++ b/compat/maven-plugin-api/src/main/java/org/apache/maven/plugin/descriptor/MojoDescriptor.java
@@ -442,11 +442,13 @@ public void setMojoConfiguration(PlexusConfiguration mojoConfiguration) {
     }
 
     /** {@inheritDoc} */
+    @Override
     public String getRole() {
         return isV4Api() ? "org.apache.maven.api.plugin.Mojo" : Mojo.ROLE;
     }
 
     /** {@inheritDoc} */
+    @Override
     public String getRoleHint() {
         return getId();
     }
@@ -468,6 +470,7 @@ public String getFullGoalName() {
     }
 
     /** {@inheritDoc} */
+    @Override
     public String getComponentType() {
         return MAVEN_PLUGIN;
     }
@@ -501,6 +504,7 @@ public void setInheritedByDefault(boolean inheritedByDefault) {
     }
 
     /** {@inheritDoc} */
+    @Override
     public boolean equals(Object object) {
         if (this == object) {
             return true;
@@ -515,6 +519,7 @@ public boolean equals(Object object) {
     }
 
     /** {@inheritDoc} */
+    @Override
     public int hashCode() {
         return Objects.hash(getGoal(), getPluginDescriptor());
     }
diff --git a/compat/maven-plugin-api/src/main/java/org/apache/maven/plugin/descriptor/Parameter.java b/compat/maven-plugin-api/src/main/java/org/apache/maven/plugin/descriptor/Parameter.java
index a897a05c63..2ee29058c9 100644
--- a/compat/maven-plugin-api/src/main/java/org/apache/maven/plugin/descriptor/Parameter.java
+++ b/compat/maven-plugin-api/src/main/java/org/apache/maven/plugin/descriptor/Parameter.java
@@ -116,10 +116,12 @@ public void setDeprecated(String deprecated) {
         this.deprecated = deprecated;
     }
 
+    @Override
     public int hashCode() {
         return name.hashCode();
     }
 
+    @Override
     public boolean equals(Object other) {
         return (other instanceof Parameter parameter) && getName().equals(parameter.getName());
     }
@@ -148,6 +150,7 @@ public String getDefaultValue() {
         return defaultValue;
     }
 
+    @Override
     public String toString() {
         return "Mojo parameter [name: '" + getName() + "'; alias: '" + getAlias() + "']";
     }
diff --git a/compat/maven-plugin-api/src/main/java/org/apache/maven/plugin/descriptor/PluginDescriptor.java b/compat/maven-plugin-api/src/main/java/org/apache/maven/plugin/descriptor/PluginDescriptor.java
index a5232989e4..776ba84c01 100644
--- a/compat/maven-plugin-api/src/main/java/org/apache/maven/plugin/descriptor/PluginDescriptor.java
+++ b/compat/maven-plugin-api/src/main/java/org/apache/maven/plugin/descriptor/PluginDescriptor.java
@@ -308,6 +308,7 @@ public Map<String, Artifact> getArtifactMap() {
         return artifactMap;
     }
 
+    @Override
     public boolean equals(Object object) {
         if (this == object) {
             return true;
@@ -316,6 +317,7 @@ public boolean equals(Object object) {
         return object instanceof PluginDescriptor pluginDescriptor && getId().equals(pluginDescriptor.getId());
     }
 
+    @Override
     public int hashCode() {
         return 10 + getId().hashCode();
     }
diff --git a/compat/maven-plugin-api/src/main/java/org/apache/maven/plugin/logging/SystemStreamLog.java b/compat/maven-plugin-api/src/main/java/org/apache/maven/plugin/logging/SystemStreamLog.java
index bff8bf3295..080a94c5c9 100644
--- a/compat/maven-plugin-api/src/main/java/org/apache/maven/plugin/logging/SystemStreamLog.java
+++ b/compat/maven-plugin-api/src/main/java/org/apache/maven/plugin/logging/SystemStreamLog.java
@@ -32,6 +32,7 @@ public class SystemStreamLog implements Log {
     /**
      * @see org.apache.maven.plugin.logging.Log#debug(java.lang.CharSequence)
      */
+    @Override
     public void debug(CharSequence content) {
         print("debug", content);
     }
@@ -39,6 +40,7 @@ public void debug(CharSequence content) {
     /**
      * @see org.apache.maven.plugin.logging.Log#debug(java.lang.CharSequence, java.lang.Throwable)
      */
+    @Override
     public void debug(CharSequence content, Throwable error) {
         print("debug", content, error);
     }
@@ -46,6 +48,7 @@ public void debug(CharSequence content, Throwable error) {
     /**
      * @see org.apache.maven.plugin.logging.Log#debug(java.lang.Throwable)
      */
+    @Override
     public void debug(Throwable error) {
         print("debug", error);
     }
@@ -53,6 +56,7 @@ public void debug(Throwable error) {
     /**
      * @see org.apache.maven.plugin.logging.Log#info(java.lang.CharSequence)
      */
+    @Override
     public void info(CharSequence content) {
         print("info", content);
     }
@@ -60,6 +64,7 @@ public void info(CharSequence content) {
     /**
      * @see org.apache.maven.plugin.logging.Log#info(java.lang.CharSequence, java.lang.Throwable)
      */
+    @Override
     public void info(CharSequence content, Throwable error) {
         print("info", content, error);
     }
@@ -67,6 +72,7 @@ public void info(CharSequence content, Throwable error) {
     /**
      * @see org.apache.maven.plugin.logging.Log#info(java.lang.Throwable)
      */
+    @Override
     public void info(Throwable error) {
         print("info", error);
     }
@@ -74,6 +80,7 @@ public void info(Throwable error) {
     /**
      * @see org.apache.maven.plugin.logging.Log#warn(java.lang.CharSequence)
      */
+    @Override
     public void warn(CharSequence content) {
         print("warn", content);
     }
@@ -81,6 +88,7 @@ public void warn(CharSequence content) {
     /**
      * @see org.apache.maven.plugin.logging.Log#warn(java.lang.CharSequence, java.lang.Throwable)
      */
+    @Override
     public void warn(CharSequence content, Throwable error) {
         print("warn", content, error);
     }
@@ -88,6 +96,7 @@ public void warn(CharSequence content, Throwable error) {
     /**
      * @see org.apache.maven.plugin.logging.Log#warn(java.lang.Throwable)
      */
+    @Override
     public void warn(Throwable error) {
         print("warn", error);
     }
@@ -95,6 +104,7 @@ public void warn(Throwable error) {
     /**
      * @see org.apache.maven.plugin.logging.Log#error(java.lang.CharSequence)
      */
+    @Override
     public void error(CharSequence content) {
         System.err.println("[error] " + content.toString());
     }
@@ -102,6 +112,7 @@ public void error(CharSequence content) {
     /**
      * @see org.apache.maven.plugin.logging.Log#error(java.lang.CharSequence, java.lang.Throwable)
      */
+    @Override
     public void error(CharSequence content, Throwable error) {
         StringWriter sWriter = new StringWriter();
         PrintWriter pWriter = new PrintWriter(sWriter);
@@ -114,6 +125,7 @@ public void error(CharSequence content, Throwable error) {
     /**
      * @see org.apache.maven.plugin.logging.Log#error(java.lang.Throwable)
      */
+    @Override
     public void error(Throwable error) {
         StringWriter sWriter = new StringWriter();
         PrintWriter pWriter = new PrintWriter(sWriter);
@@ -126,6 +138,7 @@ public void error(Throwable error) {
     /**
      * @see org.apache.maven.plugin.logging.Log#isDebugEnabled()
      */
+    @Override
     public boolean isDebugEnabled() {
         // TODO Not sure how best to set these for this implementation...
         return false;
@@ -134,6 +147,7 @@ public boolean isDebugEnabled() {
     /**
      * @see org.apache.maven.plugin.logging.Log#isInfoEnabled()
      */
+    @Override
     public boolean isInfoEnabled() {
         return true;
     }
@@ -141,6 +155,7 @@ public boolean isInfoEnabled() {
     /**
      * @see org.apache.maven.plugin.logging.Log#isWarnEnabled()
      */
+    @Override
     public boolean isWarnEnabled() {
         return true;
     }
@@ -148,6 +163,7 @@ public boolean isWarnEnabled() {
     /**
      * @see org.apache.maven.plugin.logging.Log#isErrorEnabled()
      */
+    @Override
     public boolean isErrorEnabled() {
         return true;
     }
diff --git a/compat/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/MavenMetadata.java b/compat/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/MavenMetadata.java
index d211969aa1..1b3cb8c612 100644
--- a/compat/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/MavenMetadata.java
+++ b/compat/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/MavenMetadata.java
@@ -80,6 +80,7 @@ public Path getPath() {
         return path;
     }
 
+    @Override
     public void merge(File existing, File result) throws RepositoryException {
         merge(existing != null ? existing.toPath() : null, result != null ? result.toPath() : null);
     }
diff --git a/compat/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/type/DefaultType.java b/compat/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/type/DefaultType.java
index 8cd12961c9..016688ef4c 100644
--- a/compat/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/type/DefaultType.java
+++ b/compat/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/type/DefaultType.java
@@ -105,6 +105,7 @@ public boolean isIncludesDependencies() {
         return this.includesDependencies;
     }
 
+    @Override
     public Set<PathType> getPathTypes() {
         return this.pathTypes;
     }
diff --git a/compat/maven-resolver-provider/src/test/java/org/apache/maven/repository/internal/util/ConsoleRepositoryListener.java b/compat/maven-resolver-provider/src/test/java/org/apache/maven/repository/internal/util/ConsoleRepositoryListener.java
index 603f9938d9..3b4a469216 100644
--- a/compat/maven-resolver-provider/src/test/java/org/apache/maven/repository/internal/util/ConsoleRepositoryListener.java
+++ b/compat/maven-resolver-provider/src/test/java/org/apache/maven/repository/internal/util/ConsoleRepositoryListener.java
@@ -35,72 +35,89 @@ public ConsoleRepositoryListener(PrintStream out) {
         this.out = (out != null) ? out : System.out;
     }
 
+    @Override
     public void artifactDeployed(RepositoryEvent event) {
         println("artifactDeployed", event.getArtifact() + " to " + event.getRepository());
     }
 
+    @Override
     public void artifactDeploying(RepositoryEvent event) {
         println("artifactDeploying", event.getArtifact() + " to " + event.getRepository());
     }
 
+    @Override
     public void artifactDescriptorInvalid(RepositoryEvent event) {
         println(
                 "artifactDescriptorInvalid",
                 "for " + event.getArtifact() + ": " + event.getException().getMessage());
     }
 
+    @Override
     public void artifactDescriptorMissing(RepositoryEvent event) {
         println("artifactDescriptorMissing", "for " + event.getArtifact());
     }
 
+    @Override
     public void artifactInstalled(RepositoryEvent event) {
         println("artifactInstalled", event.getArtifact() + " to " + event.getFile());
     }
 
+    @Override
     public void artifactInstalling(RepositoryEvent event) {
         println("artifactInstalling", event.getArtifact() + " to " + event.getFile());
     }
 
+    @Override
     public void artifactResolved(RepositoryEvent event) {
         println("artifactResolved", event.getArtifact() + " from " + event.getRepository());
     }
 
+    @Override
     public void artifactDownloading(RepositoryEvent event) {
         println("artifactDownloading", event.getArtifact() + " from " + event.getRepository());
     }
 
+    @Override
     public void artifactDownloaded(RepositoryEvent event) {
         println("artifactDownloaded", event.getArtifact() + " from " + event.getRepository());
     }
 
+    @Override
     public void artifactResolving(RepositoryEvent event) {
         println("artifactResolving", event.getArtifact().toString());
     }
 
+    @Override
     public void metadataDeployed(RepositoryEvent event) {
         println("metadataDeployed", event.getMetadata() + " to " + event.getRepository());
     }
 
+    @Override
     public void metadataDeploying(RepositoryEvent event) {
         println("metadataDeploying", event.getMetadata() + " to " + event.getRepository());
     }
 
+    @Override
     public void metadataInstalled(RepositoryEvent event) {
         println("metadataInstalled", event.getMetadata() + " to " + event.getFile());
     }
 
+    @Override
     public void metadataInstalling(RepositoryEvent event) {
         println("metadataInstalling", event.getMetadata() + " to " + event.getFile());
     }
 
+    @Override
     public void metadataInvalid(RepositoryEvent event) {
         println("metadataInvalid", event.getMetadata().toString());
     }
 
+    @Override
     public void metadataResolved(RepositoryEvent event) {
         println("metadataResolved", event.getMetadata() + " from " + event.getRepository());
     }
 
+    @Override
     public void metadataResolving(RepositoryEvent event) {
         println("metadataResolving", event.getMetadata() + " from " + event.getRepository());
     }
diff --git a/compat/maven-settings-builder/src/test/java/org/apache/maven/settings/validation/DefaultSettingsValidatorTest.java b/compat/maven-settings-builder/src/test/java/org/apache/maven/settings/validation/DefaultSettingsValidatorTest.java
index 0feff31d3c..d2f95b21da 100644
--- a/compat/maven-settings-builder/src/test/java/org/apache/maven/settings/validation/DefaultSettingsValidatorTest.java
+++ b/compat/maven-settings-builder/src/test/java/org/apache/maven/settings/validation/DefaultSettingsValidatorTest.java
@@ -223,6 +223,7 @@ private static class SimpleProblemCollector implements SettingsProblemCollector
 
         List<String> messages = new ArrayList<>();
 
+        @Override
         public void add(Severity severity, String message, int line, int column, Exception cause) {
             messages.add(message);
         }
diff --git a/compat/maven-toolchain-builder/src/test/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilderTest.java b/compat/maven-toolchain-builder/src/test/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilderTest.java
index 8e3fb5d467..ba5e543a99 100644
--- a/compat/maven-toolchain-builder/src/test/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilderTest.java
+++ b/compat/maven-toolchain-builder/src/test/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilderTest.java
@@ -324,6 +324,7 @@ static class TestEnvVarSource implements OperatingSystemUtils.EnvVarSource {
             this.envVarMap = envVarMap;
         }
 
+        @Override
         public Map<String, String> getEnvMap() {
             return envVarMap;
         }
diff --git a/impl/maven-cli/src/main/java/org/apache/maven/cling/invoker/mvn/MavenInvokerRequest.java b/impl/maven-cli/src/main/java/org/apache/maven/cling/invoker/mvn/MavenInvokerRequest.java
index baa03a079d..d390b88ce6 100644
--- a/impl/maven-cli/src/main/java/org/apache/maven/cling/invoker/mvn/MavenInvokerRequest.java
+++ b/impl/maven-cli/src/main/java/org/apache/maven/cling/invoker/mvn/MavenInvokerRequest.java
@@ -70,6 +70,7 @@ public MavenInvokerRequest(
      * The mandatory Maven options.
      */
     @Nonnull
+    @Override
     public MavenOptions options() {
         return options;
     }
diff --git a/impl/maven-cli/src/main/java/org/apache/maven/cling/invoker/mvnenc/EncryptInvokerRequest.java b/impl/maven-cli/src/main/java/org/apache/maven/cling/invoker/mvnenc/EncryptInvokerRequest.java
index 059aecd904..60f596def7 100644
--- a/impl/maven-cli/src/main/java/org/apache/maven/cling/invoker/mvnenc/EncryptInvokerRequest.java
+++ b/impl/maven-cli/src/main/java/org/apache/maven/cling/invoker/mvnenc/EncryptInvokerRequest.java
@@ -67,6 +67,7 @@ public EncryptInvokerRequest(
      * The mandatory Encrypt options.
      */
     @Nonnull
+    @Override
     public EncryptOptions options() {
         return options;
     }
diff --git a/impl/maven-cli/src/main/java/org/apache/maven/cling/invoker/mvnsh/ShellInvokerRequest.java b/impl/maven-cli/src/main/java/org/apache/maven/cling/invoker/mvnsh/ShellInvokerRequest.java
index 0b2fdf31f9..a5c328b82d 100644
--- a/impl/maven-cli/src/main/java/org/apache/maven/cling/invoker/mvnsh/ShellInvokerRequest.java
+++ b/impl/maven-cli/src/main/java/org/apache/maven/cling/invoker/mvnsh/ShellInvokerRequest.java
@@ -67,6 +67,7 @@ public ShellInvokerRequest(
      * The mandatory Shell options.
      */
     @Nonnull
+    @Override
     public ShellOptions options() {
         return options;
     }
diff --git a/impl/maven-cli/src/main/java/org/apache/maven/cling/invoker/mvnsh/builtin/BuiltinShellCommandRegistryFactory.java b/impl/maven-cli/src/main/java/org/apache/maven/cling/invoker/mvnsh/builtin/BuiltinShellCommandRegistryFactory.java
index 54fa219bd2..08ebd6062f 100644
--- a/impl/maven-cli/src/main/java/org/apache/maven/cling/invoker/mvnsh/builtin/BuiltinShellCommandRegistryFactory.java
+++ b/impl/maven-cli/src/main/java/org/apache/maven/cling/invoker/mvnsh/builtin/BuiltinShellCommandRegistryFactory.java
@@ -60,6 +60,7 @@
 @Named("builtin")
 @Singleton
 public class BuiltinShellCommandRegistryFactory implements ShellCommandRegistryFactory {
+    @Override
     public CommandRegistry createShellCommandRegistry(LookupContext context) {
         return new BuiltinShellCommandRegistry(context);
     }
diff --git a/impl/maven-cli/src/main/java/org/apache/maven/cling/props/MavenProperties.java b/impl/maven-cli/src/main/java/org/apache/maven/cling/props/MavenProperties.java
index da01bf6a96..27f4ef8052 100644
--- a/impl/maven-cli/src/main/java/org/apache/maven/cling/props/MavenProperties.java
+++ b/impl/maven-cli/src/main/java/org/apache/maven/cling/props/MavenProperties.java
@@ -192,21 +192,26 @@ public Iterator<Entry<String, String>> iterator() {
                     final Iterator<Entry<String, String>> keyIterator =
                             storage.entrySet().iterator();
 
+                    @Override
                     public boolean hasNext() {
                         return keyIterator.hasNext();
                     }
 
+                    @Override
                     public Entry<String, String> next() {
                         final Entry<String, String> entry = keyIterator.next();
                         return new Entry<String, String>() {
+                            @Override
                             public String getKey() {
                                 return entry.getKey();
                             }
 
+                            @Override
                             public String getValue() {
                                 return entry.getValue();
                             }
 
+                            @Override
                             public String setValue(String value) {
                                 String old = entry.setValue(value);
                                 if (old == null || !old.equals(value)) {
@@ -220,6 +225,7 @@ public String setValue(String value) {
                         };
                     }
 
+                    @Override
                     public void remove() {
                         keyIterator.remove();
                     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/ReactorReader.java b/impl/maven-core/src/main/java/org/apache/maven/ReactorReader.java
index 1c242712ba..825e38bcad 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/ReactorReader.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/ReactorReader.java
@@ -93,10 +93,12 @@ class ReactorReader implements MavenWorkspaceReader {
     // Public API
     //
 
+    @Override
     public WorkspaceRepository getRepository() {
         return repository;
     }
 
+    @Override
     public File findArtifact(Artifact artifact) {
         MavenProject project = getProject(artifact);
 
@@ -122,6 +124,7 @@ public File findArtifact(Artifact artifact) {
         return null;
     }
 
+    @Override
     public List<String> findVersions(Artifact artifact) {
         List<String> versions = getProjects()
                 .getOrDefault(artifact.getGroupId(), Collections.emptyMap())
diff --git a/impl/maven-core/src/main/java/org/apache/maven/RepositoryUtils.java b/impl/maven-core/src/main/java/org/apache/maven/RepositoryUtils.java
index a093e4d909..ec9af20fc4 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/RepositoryUtils.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/RepositoryUtils.java
@@ -319,6 +319,7 @@ static class MavenArtifactTypeRegistry implements ArtifactTypeRegistry {
             this.handlerManager = handlerManager;
         }
 
+        @Override
         public ArtifactType get(String stereotypeId) {
             ArtifactHandler handler = handlerManager.getArtifactHandler(stereotypeId);
             return newArtifactType(stereotypeId, handler);
diff --git a/impl/maven-core/src/main/java/org/apache/maven/artifact/factory/DefaultArtifactFactory.java b/impl/maven-core/src/main/java/org/apache/maven/artifact/factory/DefaultArtifactFactory.java
index 368ef291f0..4348416a9a 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/artifact/factory/DefaultArtifactFactory.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/artifact/factory/DefaultArtifactFactory.java
@@ -43,15 +43,18 @@ public DefaultArtifactFactory(ArtifactHandlerManager artifactHandlerManager) {
         this.artifactHandlerManager = artifactHandlerManager;
     }
 
+    @Override
     public Artifact createArtifact(String groupId, String artifactId, String version, String scope, String type) {
         return createArtifact(groupId, artifactId, version, scope, type, null, null);
     }
 
+    @Override
     public Artifact createArtifactWithClassifier(
             String groupId, String artifactId, String version, String type, String classifier) {
         return createArtifact(groupId, artifactId, version, null, type, classifier, null);
     }
 
+    @Override
     public Artifact createDependencyArtifact(
             String groupId,
             String artifactId,
@@ -62,6 +65,7 @@ public Artifact createDependencyArtifact(
         return createArtifact(groupId, artifactId, versionRange, type, classifier, scope, null);
     }
 
+    @Override
     public Artifact createDependencyArtifact(
             String groupId,
             String artifactId,
@@ -73,6 +77,7 @@ public Artifact createDependencyArtifact(
         return createArtifact(groupId, artifactId, versionRange, type, classifier, scope, null, optional);
     }
 
+    @Override
     public Artifact createDependencyArtifact(
             String groupId,
             String artifactId,
@@ -84,6 +89,7 @@ public Artifact createDependencyArtifact(
         return createArtifact(groupId, artifactId, versionRange, type, classifier, scope, inheritedScope);
     }
 
+    @Override
     public Artifact createDependencyArtifact(
             String groupId,
             String artifactId,
@@ -96,26 +102,32 @@ public Artifact createDependencyArtifact(
         return createArtifact(groupId, artifactId, versionRange, type, classifier, scope, inheritedScope, optional);
     }
 
+    @Override
     public Artifact createBuildArtifact(String groupId, String artifactId, String version, String packaging) {
         return createArtifact(groupId, artifactId, version, null, packaging, null, null);
     }
 
+    @Override
     public Artifact createProjectArtifact(String groupId, String artifactId, String version) {
         return createProjectArtifact(groupId, artifactId, version, null);
     }
 
+    @Override
     public Artifact createParentArtifact(String groupId, String artifactId, String version) {
         return createProjectArtifact(groupId, artifactId, version);
     }
 
+    @Override
     public Artifact createPluginArtifact(String groupId, String artifactId, VersionRange versionRange) {
         return createArtifact(groupId, artifactId, versionRange, "maven-plugin", null, Artifact.SCOPE_RUNTIME, null);
     }
 
+    @Override
     public Artifact createProjectArtifact(String groupId, String artifactId, String version, String scope) {
         return createArtifact(groupId, artifactId, version, scope, "pom");
     }
 
+    @Override
     public Artifact createExtensionArtifact(String groupId, String artifactId, VersionRange versionRange) {
         return createArtifact(groupId, artifactId, versionRange, "jar", null, Artifact.SCOPE_RUNTIME, null);
     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/artifact/repository/DefaultRepositoryRequest.java b/impl/maven-core/src/main/java/org/apache/maven/artifact/repository/DefaultRepositoryRequest.java
index 45dc040048..38b45c5bdf 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/artifact/repository/DefaultRepositoryRequest.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/artifact/repository/DefaultRepositoryRequest.java
@@ -70,36 +70,43 @@ public static RepositoryRequest getRepositoryRequest(MavenSession session, Maven
         return request;
     }
 
+    @Override
     public boolean isOffline() {
         return offline;
     }
 
+    @Override
     public DefaultRepositoryRequest setOffline(boolean offline) {
         this.offline = offline;
 
         return this;
     }
 
+    @Override
     public boolean isForceUpdate() {
         return forceUpdate;
     }
 
+    @Override
     public DefaultRepositoryRequest setForceUpdate(boolean forceUpdate) {
         this.forceUpdate = forceUpdate;
 
         return this;
     }
 
+    @Override
     public ArtifactRepository getLocalRepository() {
         return localRepository;
     }
 
+    @Override
     public DefaultRepositoryRequest setLocalRepository(ArtifactRepository localRepository) {
         this.localRepository = localRepository;
 
         return this;
     }
 
+    @Override
     public List<ArtifactRepository> getRemoteRepositories() {
         if (remoteRepositories == null) {
             remoteRepositories = new ArrayList<>();
@@ -108,6 +115,7 @@ public List<ArtifactRepository> getRemoteRepositories() {
         return remoteRepositories;
     }
 
+    @Override
     public DefaultRepositoryRequest setRemoteRepositories(List<ArtifactRepository> remoteRepositories) {
         this.remoteRepositories = remoteRepositories;
 
diff --git a/impl/maven-core/src/main/java/org/apache/maven/artifact/repository/MavenArtifactRepository.java b/impl/maven-core/src/main/java/org/apache/maven/artifact/repository/MavenArtifactRepository.java
index a1a587cc11..9c1481ee08 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/artifact/repository/MavenArtifactRepository.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/artifact/repository/MavenArtifactRepository.java
@@ -109,46 +109,57 @@ public MavenArtifactRepository(
         this.basedirPath = path;
     }
 
+    @Override
     public String pathOf(Artifact artifact) {
         return layout.pathOf(artifact);
     }
 
+    @Override
     public String pathOfRemoteRepositoryMetadata(ArtifactMetadata artifactMetadata) {
         return layout.pathOfRemoteRepositoryMetadata(artifactMetadata);
     }
 
+    @Override
     public String pathOfLocalRepositoryMetadata(ArtifactMetadata metadata, ArtifactRepository repository) {
         return layout.pathOfLocalRepositoryMetadata(metadata, repository);
     }
 
+    @Override
     public void setLayout(ArtifactRepositoryLayout layout) {
         this.layout = layout;
     }
 
+    @Override
     public ArtifactRepositoryLayout getLayout() {
         return layout;
     }
 
+    @Override
     public void setSnapshotUpdatePolicy(ArtifactRepositoryPolicy snapshots) {
         this.snapshots = snapshots;
     }
 
+    @Override
     public ArtifactRepositoryPolicy getSnapshots() {
         return snapshots;
     }
 
+    @Override
     public void setReleaseUpdatePolicy(ArtifactRepositoryPolicy releases) {
         this.releases = releases;
     }
 
+    @Override
     public ArtifactRepositoryPolicy getReleases() {
         return releases;
     }
 
+    @Override
     public String getKey() {
         return getId();
     }
 
+    @Override
     public String toString() {
         StringBuilder sb = new StringBuilder(256);
 
@@ -179,6 +190,7 @@ public String toString() {
         return sb.toString();
     }
 
+    @Override
     public Artifact find(Artifact artifact) {
         File artifactFile = new File(getBasedir(), pathOf(artifact));
 
@@ -189,18 +201,22 @@ public Artifact find(Artifact artifact) {
         return artifact;
     }
 
+    @Override
     public List<String> findVersions(Artifact artifact) {
         return Collections.emptyList();
     }
 
+    @Override
     public String getId() {
         return id;
     }
 
+    @Override
     public String getUrl() {
         return url;
     }
 
+    @Override
     public String getBasedir() {
         return basedir;
     }
@@ -210,14 +226,17 @@ public Path getBasedirPath() {
         return basedirPath;
     }
 
+    @Override
     public String getProtocol() {
         return protocol;
     }
 
+    @Override
     public void setId(String id) {
         this.id = id;
     }
 
+    @Override
     public void setUrl(String url) {
         this.url = url;
 
@@ -319,6 +338,7 @@ private static String decode(String url) {
         return decoded;
     }
 
+    @Override
     public int hashCode() {
         final int prime = 31;
         int result = 1;
@@ -326,6 +346,7 @@ public int hashCode() {
         return result;
     }
 
+    @Override
     public boolean equals(Object obj) {
         if (this == obj) {
             return true;
@@ -346,42 +367,52 @@ protected static <T> boolean eq(T s1, T s2) {
         return Objects.equals(s1, s2);
     }
 
+    @Override
     public Authentication getAuthentication() {
         return authentication;
     }
 
+    @Override
     public void setAuthentication(Authentication authentication) {
         this.authentication = authentication;
     }
 
+    @Override
     public Proxy getProxy() {
         return proxy;
     }
 
+    @Override
     public void setProxy(Proxy proxy) {
         this.proxy = proxy;
     }
 
+    @Override
     public boolean isBlacklisted() {
         return false;
     }
 
+    @Override
     public void setBlacklisted(boolean blackListed) {
         // no op
     }
 
+    @Override
     public boolean isUniqueVersion() {
         return true;
     }
 
+    @Override
     public boolean isProjectAware() {
         return false;
     }
 
+    @Override
     public List<ArtifactRepository> getMirroredRepositories() {
         return mirroredRepositories;
     }
 
+    @Override
     public void setMirroredRepositories(List<ArtifactRepository> mirroredRepositories) {
         if (mirroredRepositories != null) {
             this.mirroredRepositories = Collections.unmodifiableList(mirroredRepositories);
@@ -390,10 +421,12 @@ public void setMirroredRepositories(List<ArtifactRepository> mirroredRepositorie
         }
     }
 
+    @Override
     public boolean isBlocked() {
         return blocked;
     }
 
+    @Override
     public void setBlocked(boolean blocked) {
         this.blocked = blocked;
     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/artifact/repository/layout/DefaultRepositoryLayout.java b/impl/maven-core/src/main/java/org/apache/maven/artifact/repository/layout/DefaultRepositoryLayout.java
index e963886deb..b405c1e8d1 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/artifact/repository/layout/DefaultRepositoryLayout.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/artifact/repository/layout/DefaultRepositoryLayout.java
@@ -37,10 +37,12 @@ public class DefaultRepositoryLayout implements ArtifactRepositoryLayout {
 
     private static final char ARTIFACT_SEPARATOR = '-';
 
+    @Override
     public String getId() {
         return "default";
     }
 
+    @Override
     public String pathOf(Artifact artifact) {
         ArtifactHandler artifactHandler = artifact.getArtifactHandler();
 
@@ -63,6 +65,7 @@ public String pathOf(Artifact artifact) {
         return path.toString();
     }
 
+    @Override
     public String pathOfLocalRepositoryMetadata(ArtifactMetadata metadata, ArtifactRepository repository) {
         return pathOfRepositoryMetadata(metadata, metadata.getLocalFilename(repository));
     }
@@ -84,6 +87,7 @@ private String pathOfRepositoryMetadata(ArtifactMetadata metadata, String filena
         return path.toString();
     }
 
+    @Override
     public String pathOfRemoteRepositoryMetadata(ArtifactMetadata metadata) {
         return pathOfRepositoryMetadata(metadata, metadata.getRemoteFilename());
     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/artifact/repository/metadata/io/DefaultMetadataReader.java b/impl/maven-core/src/main/java/org/apache/maven/artifact/repository/metadata/io/DefaultMetadataReader.java
index 4680d6f7cd..3085cfc59c 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/artifact/repository/metadata/io/DefaultMetadataReader.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/artifact/repository/metadata/io/DefaultMetadataReader.java
@@ -41,12 +41,14 @@
 @Singleton
 public class DefaultMetadataReader implements MetadataReader {
 
+    @Override
     public Metadata read(File input, Map<String, ?> options) throws IOException {
         Objects.requireNonNull(input, "input cannot be null");
 
         return read(Files.newInputStream(input.toPath()), options);
     }
 
+    @Override
     public Metadata read(Reader input, Map<String, ?> options) throws IOException {
         Objects.requireNonNull(input, "input cannot be null");
 
@@ -61,6 +63,7 @@ public Metadata read(Reader input, Map<String, ?> options) throws IOException {
         }
     }
 
+    @Override
     public Metadata read(InputStream input, Map<String, ?> options) throws IOException {
         Objects.requireNonNull(input, "input cannot be null");
 
diff --git a/impl/maven-core/src/main/java/org/apache/maven/artifact/resolver/filter/AbstractScopeArtifactFilter.java b/impl/maven-core/src/main/java/org/apache/maven/artifact/resolver/filter/AbstractScopeArtifactFilter.java
index 14c2e26b8e..bcec83b785 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/artifact/resolver/filter/AbstractScopeArtifactFilter.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/artifact/resolver/filter/AbstractScopeArtifactFilter.java
@@ -62,6 +62,7 @@ void addScopeInternal(String scope) {
         }
     }
 
+    @Override
     public boolean include(Artifact artifact) {
         if (Artifact.SCOPE_COMPILE.equals(artifact.getScope())) {
             return compileScope;
diff --git a/impl/maven-core/src/main/java/org/apache/maven/artifact/resolver/filter/AndArtifactFilter.java b/impl/maven-core/src/main/java/org/apache/maven/artifact/resolver/filter/AndArtifactFilter.java
index 50e9c85736..ed502390d8 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/artifact/resolver/filter/AndArtifactFilter.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/artifact/resolver/filter/AndArtifactFilter.java
@@ -41,6 +41,7 @@ public AndArtifactFilter(List<ArtifactFilter> filters) {
         this.filters = new LinkedHashSet<>(filters);
     }
 
+    @Override
     public boolean include(Artifact artifact) {
         boolean include = true;
         for (Iterator<ArtifactFilter> i = filters.iterator(); i.hasNext() && include; ) {
diff --git a/impl/maven-core/src/main/java/org/apache/maven/artifact/resolver/filter/ExcludesArtifactFilter.java b/impl/maven-core/src/main/java/org/apache/maven/artifact/resolver/filter/ExcludesArtifactFilter.java
index ebe1203e24..11baf86d21 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/artifact/resolver/filter/ExcludesArtifactFilter.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/artifact/resolver/filter/ExcludesArtifactFilter.java
@@ -32,6 +32,7 @@ public ExcludesArtifactFilter(List<String> patterns) {
         super(patterns);
     }
 
+    @Override
     public boolean include(Artifact artifact) {
         return !super.include(artifact);
     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/artifact/resolver/filter/ExclusionSetFilter.java b/impl/maven-core/src/main/java/org/apache/maven/artifact/resolver/filter/ExclusionSetFilter.java
index 913ea38896..381b772b03 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/artifact/resolver/filter/ExclusionSetFilter.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/artifact/resolver/filter/ExclusionSetFilter.java
@@ -37,6 +37,7 @@ public ExclusionSetFilter(Set<String> excludes) {
         this.excludes = excludes;
     }
 
+    @Override
     public boolean include(Artifact artifact) {
         String id = artifact.getArtifactId();
 
diff --git a/impl/maven-core/src/main/java/org/apache/maven/artifact/resolver/filter/IncludesArtifactFilter.java b/impl/maven-core/src/main/java/org/apache/maven/artifact/resolver/filter/IncludesArtifactFilter.java
index 8ee8ce48d2..56f69c5db3 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/artifact/resolver/filter/IncludesArtifactFilter.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/artifact/resolver/filter/IncludesArtifactFilter.java
@@ -37,6 +37,7 @@ public IncludesArtifactFilter(List<String> patterns) {
         this.patterns = new LinkedHashSet<>(patterns);
     }
 
+    @Override
     public boolean include(Artifact artifact) {
         String id = artifact.getGroupId() + ":" + artifact.getArtifactId();
 
diff --git a/impl/maven-core/src/main/java/org/apache/maven/classrealm/ArtifactClassRealmConstituent.java b/impl/maven-core/src/main/java/org/apache/maven/classrealm/ArtifactClassRealmConstituent.java
index 7b03114fb0..509359bfd1 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/classrealm/ArtifactClassRealmConstituent.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/classrealm/ArtifactClassRealmConstituent.java
@@ -32,26 +32,32 @@ class ArtifactClassRealmConstituent implements ClassRealmConstituent {
         this.artifact = artifact;
     }
 
+    @Override
     public String getGroupId() {
         return artifact.getGroupId();
     }
 
+    @Override
     public String getArtifactId() {
         return artifact.getArtifactId();
     }
 
+    @Override
     public String getType() {
         return artifact.getExtension();
     }
 
+    @Override
     public String getClassifier() {
         return artifact.getClassifier();
     }
 
+    @Override
     public String getVersion() {
         return artifact.getBaseVersion();
     }
 
+    @Override
     public File getFile() {
         return artifact.getFile();
     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java b/impl/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java
index 4da7b14c7e..2ef0706a63 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmManager.java
@@ -141,6 +141,7 @@ private ClassRealm newRealm(String id) {
         }
     }
 
+    @Override
     public ClassRealm getMavenApiRealm() {
         return mavenApiRealm;
     }
@@ -209,10 +210,12 @@ private ClassRealm createRealm(
         return classRealm;
     }
 
+    @Override
     public ClassRealm getCoreRealm() {
         return containerRealm;
     }
 
+    @Override
     public ClassRealm createProjectRealm(Model model, List<Artifact> artifacts) {
         Objects.requireNonNull(model, "model cannot be null");
 
@@ -225,6 +228,7 @@ private static String getKey(Model model) {
         return "project>" + model.getGroupId() + ":" + model.getArtifactId() + ":" + model.getVersion();
     }
 
+    @Override
     public ClassRealm createExtensionRealm(Plugin plugin, List<Artifact> artifacts) {
         Objects.requireNonNull(plugin, "plugin cannot be null");
 
@@ -239,6 +243,7 @@ private boolean isProvidedArtifact(Artifact artifact, boolean v4api) {
         return provided.contains(artifact.getGroupId() + ":" + artifact.getArtifactId());
     }
 
+    @Override
     public ClassRealm createPluginRealm(
             Plugin plugin,
             ClassLoader parent,
diff --git a/impl/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmRequest.java b/impl/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmRequest.java
index 168ecdf1e0..0b162a0fd4 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmRequest.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/classrealm/DefaultClassRealmRequest.java
@@ -48,26 +48,32 @@ class DefaultClassRealmRequest implements ClassRealmRequest {
         this.constituents = constituents;
     }
 
+    @Override
     public RealmType getType() {
         return type;
     }
 
+    @Override
     public ClassLoader getParent() {
         return parent;
     }
 
+    @Override
     public List<String> getImports() {
         return getParentImports();
     }
 
+    @Override
     public List<String> getParentImports() {
         return parentImports;
     }
 
+    @Override
     public Map<String, ClassLoader> getForeignImports() {
         return foreignImports;
     }
 
+    @Override
     public List<ClassRealmConstituent> getConstituents() {
         return constituents;
     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/configuration/BasedirBeanConfigurationPathTranslator.java b/impl/maven-core/src/main/java/org/apache/maven/configuration/BasedirBeanConfigurationPathTranslator.java
index 774fa6492b..c7732b5ef1 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/configuration/BasedirBeanConfigurationPathTranslator.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/configuration/BasedirBeanConfigurationPathTranslator.java
@@ -38,6 +38,7 @@ public BasedirBeanConfigurationPathTranslator(File basedir) {
         this.basedir = basedir;
     }
 
+    @Override
     public File translatePath(File path) {
         File result = path;
 
diff --git a/impl/maven-core/src/main/java/org/apache/maven/configuration/DefaultBeanConfigurationRequest.java b/impl/maven-core/src/main/java/org/apache/maven/configuration/DefaultBeanConfigurationRequest.java
index 232fcde4e4..b071fc291e 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/configuration/DefaultBeanConfigurationRequest.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/configuration/DefaultBeanConfigurationRequest.java
@@ -44,27 +44,33 @@ public class DefaultBeanConfigurationRequest implements BeanConfigurationRequest
 
     private BeanConfigurationPathTranslator pathTranslator;
 
+    @Override
     public Object getBean() {
         return bean;
     }
 
+    @Override
     public DefaultBeanConfigurationRequest setBean(Object bean) {
         this.bean = bean;
         return this;
     }
 
+    @Override
     public Object getConfiguration() {
         return configuration;
     }
 
+    @Override
     public String getConfigurationElement() {
         return configurationElement;
     }
 
+    @Override
     public DefaultBeanConfigurationRequest setConfiguration(Object configuration) {
         return setConfiguration(configuration, null);
     }
 
+    @Override
     public DefaultBeanConfigurationRequest setConfiguration(Object configuration, String element) {
         this.configuration = configuration;
         this.configurationElement = element;
@@ -133,28 +139,34 @@ private Plugin findPlugin(Model model, String groupId, String artifactId) {
         return null;
     }
 
+    @Override
     public ClassLoader getClassLoader() {
         return classLoader;
     }
 
+    @Override
     public DefaultBeanConfigurationRequest setClassLoader(ClassLoader classLoader) {
         this.classLoader = classLoader;
         return this;
     }
 
+    @Override
     public BeanConfigurationValuePreprocessor getValuePreprocessor() {
         return valuePreprocessor;
     }
 
+    @Override
     public DefaultBeanConfigurationRequest setValuePreprocessor(BeanConfigurationValuePreprocessor valuePreprocessor) {
         this.valuePreprocessor = valuePreprocessor;
         return this;
     }
 
+    @Override
     public BeanConfigurationPathTranslator getPathTranslator() {
         return pathTranslator;
     }
 
+    @Override
     public DefaultBeanConfigurationRequest setPathTranslator(BeanConfigurationPathTranslator pathTranslator) {
         this.pathTranslator = pathTranslator;
         return this;
diff --git a/impl/maven-core/src/main/java/org/apache/maven/configuration/internal/DefaultBeanConfigurator.java b/impl/maven-core/src/main/java/org/apache/maven/configuration/internal/DefaultBeanConfigurator.java
index a6722fc5f4..3abe1d0ada 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/configuration/internal/DefaultBeanConfigurator.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/configuration/internal/DefaultBeanConfigurator.java
@@ -62,6 +62,7 @@ public DefaultBeanConfigurator() {
         converterLookup = new EnhancedConverterLookup();
     }
 
+    @Override
     public void configureBean(BeanConfigurationRequest request) throws BeanConfigurationException {
         Objects.requireNonNull(request, "request cannot be null");
         Objects.requireNonNull(request.getBean(), "request.bean cannot be null");
@@ -113,6 +114,7 @@ static class BeanExpressionEvaluator implements TypeAwareExpressionEvaluator {
             translator = request.getPathTranslator();
         }
 
+        @Override
         public Object evaluate(String expression, Class<?> type) throws ExpressionEvaluationException {
             if (preprocessor != null) {
                 try {
@@ -124,10 +126,12 @@ public Object evaluate(String expression, Class<?> type) throws ExpressionEvalua
             return expression;
         }
 
+        @Override
         public Object evaluate(String expression) throws ExpressionEvaluationException {
             return evaluate(expression, null);
         }
 
+        @Override
         public File alignToBaseDirectory(File file) {
             if (translator != null) {
                 return translator.translatePath(file);
diff --git a/impl/maven-core/src/main/java/org/apache/maven/configuration/internal/EnhancedConfigurationConverter.java b/impl/maven-core/src/main/java/org/apache/maven/configuration/internal/EnhancedConfigurationConverter.java
index 0aff600e75..4519c11463 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/configuration/internal/EnhancedConfigurationConverter.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/configuration/internal/EnhancedConfigurationConverter.java
@@ -66,6 +66,7 @@ protected Object fromExpression(
         }
     }
 
+    @Override
     public Object fromConfiguration(
             final ConverterLookup lookup,
             final PlexusConfiguration configuration,
diff --git a/impl/maven-core/src/main/java/org/apache/maven/eventspy/AbstractEventSpy.java b/impl/maven-core/src/main/java/org/apache/maven/eventspy/AbstractEventSpy.java
index 13efb349a1..32ca3d92c9 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/eventspy/AbstractEventSpy.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/eventspy/AbstractEventSpy.java
@@ -24,9 +24,12 @@
  */
 public abstract class AbstractEventSpy implements EventSpy {
 
+    @Override
     public void init(Context context) throws Exception {}
 
+    @Override
     public void onEvent(Object event) throws Exception {}
 
+    @Override
     public void close() throws Exception {}
 }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/execution/AbstractExecutionListener.java b/impl/maven-core/src/main/java/org/apache/maven/execution/AbstractExecutionListener.java
index 058300abf4..d10f638474 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/execution/AbstractExecutionListener.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/execution/AbstractExecutionListener.java
@@ -24,70 +24,87 @@
  */
 public class AbstractExecutionListener implements ExecutionListener {
 
+    @Override
     public void projectDiscoveryStarted(ExecutionEvent event) {
         // default does nothing
     }
 
+    @Override
     public void sessionStarted(ExecutionEvent event) {
         // default does nothing
     }
 
+    @Override
     public void sessionEnded(ExecutionEvent event) {
         // default does nothing
     }
 
+    @Override
     public void projectSkipped(ExecutionEvent event) {
         // default does nothing
     }
 
+    @Override
     public void projectStarted(ExecutionEvent event) {
         // default does nothing
     }
 
+    @Override
     public void projectSucceeded(ExecutionEvent event) {
         // default does nothing
     }
 
+    @Override
     public void projectFailed(ExecutionEvent event) {
         // default does nothing
     }
 
+    @Override
     public void forkStarted(ExecutionEvent event) {
         // default does nothing
     }
 
+    @Override
     public void forkSucceeded(ExecutionEvent event) {
         // default does nothing
     }
 
+    @Override
     public void forkFailed(ExecutionEvent event) {
         // default does nothing
     }
 
+    @Override
     public void mojoSkipped(ExecutionEvent event) {
         // default does nothing
     }
 
+    @Override
     public void mojoStarted(ExecutionEvent event) {
         // default does nothing
     }
 
+    @Override
     public void mojoSucceeded(ExecutionEvent event) {
         // default does nothing
     }
 
+    @Override
     public void mojoFailed(ExecutionEvent event) {
         // default does nothing
     }
 
+    @Override
     public void forkedProjectStarted(ExecutionEvent event) {
         // default does nothing
     }
 
+    @Override
     public void forkedProjectSucceeded(ExecutionEvent event) {
         // default does nothing
     }
 
+    @Override
     public void forkedProjectFailed(ExecutionEvent event) {
         // default does nothing
     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionResult.java b/impl/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionResult.java
index 580dddeea5..82c331813f 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionResult.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/execution/DefaultMavenExecutionResult.java
@@ -40,56 +40,67 @@ public class DefaultMavenExecutionResult implements MavenExecutionResult {
 
     private boolean canResume = false;
 
+    @Override
     public MavenExecutionResult setProject(MavenProject project) {
         this.project = project;
 
         return this;
     }
 
+    @Override
     public MavenProject getProject() {
         return project;
     }
 
+    @Override
     public MavenExecutionResult setTopologicallySortedProjects(List<MavenProject> topologicallySortedProjects) {
         this.topologicallySortedProjects = topologicallySortedProjects;
 
         return this;
     }
 
+    @Override
     public List<MavenProject> getTopologicallySortedProjects() {
         return null == topologicallySortedProjects
                 ? Collections.emptyList()
                 : Collections.unmodifiableList(topologicallySortedProjects);
     }
 
+    @Override
     public DependencyResolutionResult getDependencyResolutionResult() {
         return dependencyResolutionResult;
     }
 
+    @Override
     public MavenExecutionResult setDependencyResolutionResult(DependencyResolutionResult dependencyResolutionResult) {
         this.dependencyResolutionResult = dependencyResolutionResult;
 
         return this;
     }
 
+    @Override
     public List<Throwable> getExceptions() {
         return exceptions;
     }
 
+    @Override
     public MavenExecutionResult addException(Throwable t) {
         exceptions.add(t);
 
         return this;
     }
 
+    @Override
     public boolean hasExceptions() {
         return !getExceptions().isEmpty();
     }
 
+    @Override
     public BuildSummary getBuildSummary(MavenProject project) {
         return buildSummaries.get(project);
     }
 
+    @Override
     public void addBuildSummary(BuildSummary summary) {
         buildSummaries.put(summary.getProject(), summary);
     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/execution/scope/internal/MojoExecutionScope.java b/impl/maven-core/src/main/java/org/apache/maven/execution/scope/internal/MojoExecutionScope.java
index 7cbe9b7c0a..eed9fb260d 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/execution/scope/internal/MojoExecutionScope.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/execution/scope/internal/MojoExecutionScope.java
@@ -40,6 +40,7 @@ public <T> void seed(Class<T> clazz, Provider<T> value) {
         getScopeState().seed(clazz, value::get);
     }
 
+    @Override
     public <T> Provider<T> scope(final Key<T> key, Provider<T> unscoped) {
         Object qualifier = key.getAnnotation() instanceof Named n ? n.value() : key.getAnnotation();
         org.apache.maven.di.Key<T> k =
@@ -51,18 +52,21 @@ public static <T> Provider<T> seededKeyProvider(Class<? extends T> clazz) {
         return MojoExecutionScope.<T>seededKeySupplier(clazz)::get;
     }
 
+    @Override
     public void beforeMojoExecution(MojoExecutionEvent event) throws MojoExecutionException {
         for (WeakMojoExecutionListener provided : getProvidedListeners()) {
             provided.beforeMojoExecution(event);
         }
     }
 
+    @Override
     public void afterMojoExecutionSuccess(MojoExecutionEvent event) throws MojoExecutionException {
         for (WeakMojoExecutionListener provided : getProvidedListeners()) {
             provided.afterMojoExecutionSuccess(event);
         }
     }
 
+    @Override
     public void afterExecutionFailure(MojoExecutionEvent event) {
         for (WeakMojoExecutionListener provided : getProvidedListeners()) {
             provided.afterExecutionFailure(event);
diff --git a/impl/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExportsProvider.java b/impl/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExportsProvider.java
index 0f0b510482..10e57672f5 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExportsProvider.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/extension/internal/CoreExportsProvider.java
@@ -45,6 +45,7 @@ public CoreExportsProvider(CoreExports exports) {
         this.exports = Objects.requireNonNull(exports);
     }
 
+    @Override
     public CoreExports get() {
         return exports;
     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/graph/DefaultProjectDependencyGraph.java b/impl/maven-core/src/main/java/org/apache/maven/graph/DefaultProjectDependencyGraph.java
index d49670b438..bedfd2a892 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/graph/DefaultProjectDependencyGraph.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/graph/DefaultProjectDependencyGraph.java
@@ -105,14 +105,17 @@ public DefaultProjectDependencyGraph(Collection<MavenProject> allProjects, Colle
     /**
      * @since 3.5.0
      */
+    @Override
     public List<MavenProject> getAllProjects() {
         return this.allProjects;
     }
 
+    @Override
     public List<MavenProject> getSortedProjects() {
         return new ArrayList<>(sorter.getSortedProjects());
     }
 
+    @Override
     public List<MavenProject> getDownstreamProjects(MavenProject project, boolean transitive) {
         Objects.requireNonNull(project, "project cannot be null");
 
@@ -131,6 +134,7 @@ private void getDownstreamProjects(String projectId, Set<String> projectIds, boo
         }
     }
 
+    @Override
     public List<MavenProject> getUpstreamProjects(MavenProject project, boolean transitive) {
         Objects.requireNonNull(project, "project cannot be null");
 
diff --git a/impl/maven-core/src/main/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactory.java b/impl/maven-core/src/main/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactory.java
index 9d1a3441e7..c6d3dca433 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactory.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactory.java
@@ -150,6 +150,7 @@ public RepositorySystemSession newRepositorySession(MavenExecutionRequest reques
         return newRepositorySessionBuilder(request).build();
     }
 
+    @Override
     @SuppressWarnings({"checkstyle:methodLength"})
     public SessionBuilder newRepositorySessionBuilder(MavenExecutionRequest request) {
         requireNonNull(request, "request");
diff --git a/impl/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultLifecycleRegistry.java b/impl/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultLifecycleRegistry.java
index 60a6c0b32a..84abf9fbb7 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultLifecycleRegistry.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultLifecycleRegistry.java
@@ -137,6 +137,7 @@ public Optional<Lifecycle> lookup(String id) {
         return stream().filter(lf -> Objects.equals(id, lf.id())).findAny();
     }
 
+    @Override
     public List<String> computePhases(Lifecycle lifecycle) {
         Graph graph = new Graph();
         addPhases(graph, null, null, lifecycle.v3phases());
diff --git a/impl/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultLog.java b/impl/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultLog.java
index fa26a10083..1a11fe46fd 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultLog.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultLog.java
@@ -32,6 +32,7 @@ public DefaultLog(Logger logger) {
         this.logger = requireNonNull(logger);
     }
 
+    @Override
     public void debug(CharSequence content) {
         if (isDebugEnabled()) {
             logger.debug(toString(content));
diff --git a/impl/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultSession.java b/impl/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultSession.java
index 44481cbd3a..4e054d3a57 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultSession.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/internal/impl/DefaultSession.java
@@ -84,6 +84,7 @@ public DefaultSession(
         this.runtimeInformation = runtimeInformation;
     }
 
+    @Override
     public MavenSession getMavenSession() {
         if (mavenSession == null) {
             throw new IllegalArgumentException("Found null mavenSession on session " + this);
@@ -216,6 +217,7 @@ protected Session newSession(MavenSession mavenSession, List<RemoteRepository> r
                 runtimeInformation);
     }
 
+    @Override
     public ArtifactRepository toArtifactRepository(RemoteRepository repository) {
         if (repository instanceof DefaultRemoteRepository defaultRemoteRepository) {
             org.eclipse.aether.repository.RemoteRepository rr = defaultRemoteRepository.getRepository();
diff --git a/impl/maven-core/src/main/java/org/apache/maven/internal/transformation/impl/DefaultConsumerPomArtifactTransformer.java b/impl/maven-core/src/main/java/org/apache/maven/internal/transformation/impl/DefaultConsumerPomArtifactTransformer.java
index 7a1d32e077..d2456a30fc 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/internal/transformation/impl/DefaultConsumerPomArtifactTransformer.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/internal/transformation/impl/DefaultConsumerPomArtifactTransformer.java
@@ -70,6 +70,7 @@ class DefaultConsumerPomArtifactTransformer implements ConsumerPomArtifactTransf
         this.builder = builder;
     }
 
+    @Override
     @SuppressWarnings("deprecation")
     public void injectTransformedArtifacts(RepositorySystemSession session, MavenProject project) throws IOException {
         if (project.getFile() == null) {
@@ -128,6 +129,7 @@ private void doDeleteFiles() {
         }
     }
 
+    @Override
     public InstallRequest remapInstallArtifacts(RepositorySystemSession session, InstallRequest request) {
         if (consumerPomPresent(request.getArtifacts())) {
             request.setArtifacts(replacePom(request.getArtifacts()));
@@ -135,6 +137,7 @@ public InstallRequest remapInstallArtifacts(RepositorySystemSession session, Ins
         return request;
     }
 
+    @Override
     public DeployRequest remapDeployArtifacts(RepositorySystemSession session, DeployRequest request) {
         if (consumerPomPresent(request.getArtifacts())) {
             request.setArtifacts(replacePom(request.getArtifacts()));
diff --git a/impl/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java b/impl/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
index 9bd8429c4d..70ff6f3734 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
@@ -78,6 +78,7 @@ public DefaultLifecycleExecutor(
         this.lifecycleStarter = lifecycleStarter;
     }
 
+    @Override
     public void execute(MavenSession session) {
         lifecycleStarter.execute(session);
     }
@@ -94,6 +95,7 @@ public void execute(MavenSession session) {
     // TODO This whole method could probably removed by injecting lifeCyclePluginAnalyzer straight into client site.
     // TODO But for some reason the whole plexus appcontext refuses to start when I try this.
 
+    @Override
     public Set<Plugin> getPluginsBoundByDefaultToAllLifecycles(String packaging) {
         return lifeCyclePluginAnalyzer.getPluginsBoundByDefaultToAllLifecycles(packaging);
     }
@@ -107,6 +109,7 @@ public Map<String, Lifecycle> getPhaseToLifecycleMap() {
 
     // Used by m2eclipse
 
+    @Override
     @SuppressWarnings({"UnusedDeclaration"})
     public MavenExecutionPlan calculateExecutionPlan(MavenSession session, boolean setup, String... tasks)
             throws PluginNotFoundException, PluginResolutionException, PluginDescriptorParsingException,
@@ -126,6 +129,7 @@ public MavenExecutionPlan calculateExecutionPlan(MavenSession session, boolean s
                 session, session.getCurrentProject(), mergedSegment.getTasks(), setup);
     }
 
+    @Override
     public MavenExecutionPlan calculateExecutionPlan(MavenSession session, String... tasks)
             throws PluginNotFoundException, PluginResolutionException, PluginDescriptorParsingException,
                     MojoNotFoundException, NoPluginFoundForPrefixException, InvalidPluginDescriptorException,
@@ -135,6 +139,7 @@ public MavenExecutionPlan calculateExecutionPlan(MavenSession session, String...
     }
 
     // Site 3.x
+    @Override
     public void calculateForkedExecutions(MojoExecution mojoExecution, MavenSession session)
             throws MojoNotFoundException, PluginNotFoundException, PluginResolutionException,
                     PluginDescriptorParsingException, NoPluginFoundForPrefixException, InvalidPluginDescriptorException,
@@ -143,6 +148,7 @@ public void calculateForkedExecutions(MojoExecution mojoExecution, MavenSession
     }
 
     // Site 3.x
+    @Override
     public List<MavenProject> executeForkedExecutions(MojoExecution mojoExecution, MavenSession session)
             throws LifecycleExecutionException {
         return mojoExecutor.executeForkedExecutions(mojoExecution, session);
diff --git a/impl/maven-core/src/main/java/org/apache/maven/lifecycle/MavenExecutionPlan.java b/impl/maven-core/src/main/java/org/apache/maven/lifecycle/MavenExecutionPlan.java
index e0f26f8b35..56a04bff37 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/lifecycle/MavenExecutionPlan.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/lifecycle/MavenExecutionPlan.java
@@ -94,6 +94,7 @@ public MavenExecutionPlan(List<ExecutionPlanItem> planItem, DefaultLifecycles de
         }
     }
 
+    @Override
     public Iterator<ExecutionPlanItem> iterator() {
         return getExecutionPlanItems().iterator();
     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java b/impl/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java
index 96b3ff0b8f..f41b00f905 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java
@@ -358,6 +358,7 @@ private static class ReactorDependencyFilter implements DependencyFilter {
             }
         }
 
+        @Override
         public boolean accept(DependencyNode node, List<DependencyNode> parents) {
             Dependency dependency = node.getDependency();
             if (dependency != null) {
diff --git a/impl/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/singlethreaded/SingleThreadedBuilder.java b/impl/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/singlethreaded/SingleThreadedBuilder.java
index 277c52ee09..d99850261b 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/singlethreaded/SingleThreadedBuilder.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/singlethreaded/SingleThreadedBuilder.java
@@ -48,6 +48,7 @@ public SingleThreadedBuilder(LifecycleModuleBuilder lifecycleModuleBuilder) {
         this.lifecycleModuleBuilder = lifecycleModuleBuilder;
     }
 
+    @Override
     public void build(
             MavenSession session,
             ReactorContext reactorContext,
diff --git a/impl/maven-core/src/main/java/org/apache/maven/lifecycle/internal/concurrent/ConcurrentLifecycleStarter.java b/impl/maven-core/src/main/java/org/apache/maven/lifecycle/internal/concurrent/ConcurrentLifecycleStarter.java
index 3ba6c99499..85067ac02c 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/lifecycle/internal/concurrent/ConcurrentLifecycleStarter.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/lifecycle/internal/concurrent/ConcurrentLifecycleStarter.java
@@ -78,6 +78,7 @@ public ConcurrentLifecycleStarter(
         this.mojoDescriptorCreator = mojoDescriptorCreator;
     }
 
+    @Override
     public void execute(MavenSession session) {
         eventCatapult.fire(ExecutionEvent.Type.SessionStarted, session, null);
 
diff --git a/impl/maven-core/src/main/java/org/apache/maven/model/plugin/DefaultLifecycleBindingsInjector.java b/impl/maven-core/src/main/java/org/apache/maven/model/plugin/DefaultLifecycleBindingsInjector.java
index 48b3d9763c..5b6bb734c0 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/model/plugin/DefaultLifecycleBindingsInjector.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/model/plugin/DefaultLifecycleBindingsInjector.java
@@ -60,6 +60,7 @@ public DefaultLifecycleBindingsInjector(LifeCyclePluginAnalyzer lifecycle) {
         this.lifecycle = lifecycle;
     }
 
+    @Override
     public void injectLifecycleBindings(Model model, ModelBuildingRequest request, ModelProblemCollector problems) {
         String packaging = model.getPackaging();
 
diff --git a/impl/maven-core/src/main/java/org/apache/maven/plugin/CompoundMojoExecutionListener.java b/impl/maven-core/src/main/java/org/apache/maven/plugin/CompoundMojoExecutionListener.java
index f8f53fcf8e..a991366189 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/plugin/CompoundMojoExecutionListener.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/plugin/CompoundMojoExecutionListener.java
@@ -31,18 +31,21 @@ class CompoundMojoExecutionListener implements MojoExecutionListener {
         this.listeners = listeners; // NB this is live injected collection
     }
 
+    @Override
     public void beforeMojoExecution(MojoExecutionEvent event) throws MojoExecutionException {
         for (MojoExecutionListener listener : listeners) {
             listener.beforeMojoExecution(event);
         }
     }
 
+    @Override
     public void afterMojoExecutionSuccess(MojoExecutionEvent event) throws MojoExecutionException {
         for (MojoExecutionListener listener : listeners) {
             listener.afterMojoExecutionSuccess(event);
         }
     }
 
+    @Override
     public void afterExecutionFailure(MojoExecutionEvent event) {
         for (MojoExecutionListener listener : listeners) {
             listener.afterExecutionFailure(event);
diff --git a/impl/maven-core/src/main/java/org/apache/maven/plugin/DebugConfigurationListener.java b/impl/maven-core/src/main/java/org/apache/maven/plugin/DebugConfigurationListener.java
index 9400ec56f1..f9e3fbd5e3 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/plugin/DebugConfigurationListener.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/plugin/DebugConfigurationListener.java
@@ -44,12 +44,14 @@ public DebugConfigurationListener(Logger logger) {
         this.logger = logger;
     }
 
+    @Override
     public void notifyFieldChangeUsingSetter(String fieldName, Object value, Object target) {
         if (logger.isDebugEnabled()) {
             logger.debug("  (s) " + fieldName + " = " + toString(value));
         }
     }
 
+    @Override
     public void notifyFieldChangeUsingReflection(String fieldName, Object value, Object target) {
         if (logger.isDebugEnabled()) {
             logger.debug("  (f) " + fieldName + " = " + toString(value));
diff --git a/impl/maven-core/src/main/java/org/apache/maven/plugin/DefaultExtensionRealmCache.java b/impl/maven-core/src/main/java/org/apache/maven/plugin/DefaultExtensionRealmCache.java
index 2fad875c99..b202115258 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/plugin/DefaultExtensionRealmCache.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/plugin/DefaultExtensionRealmCache.java
@@ -108,10 +108,12 @@ public Key createKey(List<Artifact> extensionArtifacts) {
         return new CacheKey(extensionArtifacts);
     }
 
+    @Override
     public CacheRecord get(Key key) {
         return cache.get(key);
     }
 
+    @Override
     public CacheRecord put(
             Key key, ClassRealm extensionRealm, ExtensionDescriptor extensionDescriptor, List<Artifact> artifacts) {
         Objects.requireNonNull(extensionRealm, "extensionRealm cannot be null");
@@ -127,6 +129,7 @@ public CacheRecord put(
         return record;
     }
 
+    @Override
     public void flush() {
         for (CacheRecord record : cache.values()) {
             ClassRealm realm = record.getRealm();
@@ -139,10 +142,12 @@ public void flush() {
         cache.clear();
     }
 
+    @Override
     public void register(MavenProject project, Key key, CacheRecord record) {
         // default cache does not track extension usage
     }
 
+    @Override
     public void dispose() {
         flush();
     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginArtifactsCache.java b/impl/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginArtifactsCache.java
index 0991e1d4cc..9c56338d85 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginArtifactsCache.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginArtifactsCache.java
@@ -116,6 +116,7 @@ public boolean equals(Object o) {
 
     protected final Map<Key, CacheRecord> cache = new ConcurrentHashMap<>();
 
+    @Override
     public Key createKey(
             Plugin plugin,
             DependencyFilter extensionFilter,
@@ -124,6 +125,7 @@ public Key createKey(
         return new CacheKey(plugin, extensionFilter, repositories, session);
     }
 
+    @Override
     public CacheRecord get(Key key) throws PluginResolutionException {
         CacheRecord cacheRecord = cache.get(key);
 
@@ -134,6 +136,7 @@ public CacheRecord get(Key key) throws PluginResolutionException {
         return cacheRecord;
     }
 
+    @Override
     public CacheRecord put(Key key, List<Artifact> pluginArtifacts) {
         Objects.requireNonNull(pluginArtifacts, "pluginArtifacts cannot be null");
 
@@ -152,6 +155,7 @@ protected void assertUniqueKey(Key key) {
         }
     }
 
+    @Override
     public CacheRecord put(Key key, PluginResolutionException exception) {
         Objects.requireNonNull(exception, "exception cannot be null");
 
@@ -164,6 +168,7 @@ public CacheRecord put(Key key, PluginResolutionException exception) {
         return record;
     }
 
+    @Override
     public void flush() {
         cache.clear();
     }
@@ -176,6 +181,7 @@ protected static boolean pluginEquals(Plugin a, Plugin b) {
         return CacheUtils.pluginEquals(a, b);
     }
 
+    @Override
     public void register(MavenProject project, Key cacheKey, CacheRecord record) {
         // default cache does not track record usage
     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginDescriptorCache.java b/impl/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginDescriptorCache.java
index 3371047c87..130817e905 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginDescriptorCache.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginDescriptorCache.java
@@ -51,14 +51,17 @@ public class DefaultPluginDescriptorCache implements PluginDescriptorCache {
     private Map<Key, PluginDescriptor> descriptors = new ConcurrentHashMap<>(128);
     private Map<Key, Key> keys = new ConcurrentHashMap<>();
 
+    @Override
     public void flush() {
         descriptors.clear();
     }
 
+    @Override
     public Key createKey(Plugin plugin, List<RemoteRepository> repositories, RepositorySystemSession session) {
         return keys.computeIfAbsent(new CacheKey(plugin, repositories, session), k -> k);
     }
 
+    @Override
     public PluginDescriptor get(Key cacheKey) {
         return clone(descriptors.get(cacheKey));
     }
@@ -80,6 +83,7 @@ public PluginDescriptor get(Key key, PluginDescriptorSupplier supplier)
         return clone(desc);
     }
 
+    @Override
     public void put(Key cacheKey, PluginDescriptor pluginDescriptor) {
         descriptors.put(cacheKey, clone(pluginDescriptor));
     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginRealmCache.java b/impl/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginRealmCache.java
index 62fd053324..681955f21d 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginRealmCache.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginRealmCache.java
@@ -133,6 +133,7 @@ public boolean equals(Object o) {
 
     protected final Map<Key, CacheRecord> cache = new ConcurrentHashMap<>();
 
+    @Override
     public Key createKey(
             Plugin plugin,
             ClassLoader parentRealm,
@@ -143,6 +144,7 @@ public Key createKey(
         return new CacheKey(plugin, parentRealm, foreignImports, dependencyFilter, repositories, session);
     }
 
+    @Override
     public CacheRecord get(Key key) {
         return cache.get(key);
     }
@@ -169,6 +171,7 @@ public CacheRecord get(Key key, PluginRealmSupplier supplier)
         }
     }
 
+    @Override
     public CacheRecord put(Key key, ClassRealm pluginRealm, List<Artifact> pluginArtifacts) {
         Objects.requireNonNull(pluginRealm, "pluginRealm cannot be null");
         Objects.requireNonNull(pluginArtifacts, "pluginArtifacts cannot be null");
@@ -184,6 +187,7 @@ public CacheRecord put(Key key, ClassRealm pluginRealm, List<Artifact> pluginArt
         return record;
     }
 
+    @Override
     public void flush() {
         for (CacheRecord record : cache.values()) {
             ClassRealm realm = record.getRealm();
@@ -204,10 +208,12 @@ protected static boolean pluginEquals(Plugin a, Plugin b) {
         return CacheUtils.pluginEquals(a, b);
     }
 
+    @Override
     public void register(MavenProject project, Key key, CacheRecord record) {
         // default cache does not track plugin usage
     }
 
+    @Override
     public void dispose() {
         flush();
     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginPrerequisitesChecker.java b/impl/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginPrerequisitesChecker.java
index 48cdda59bc..ee240159ae 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginPrerequisitesChecker.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginPrerequisitesChecker.java
@@ -32,5 +32,6 @@ public interface MavenPluginPrerequisitesChecker extends Consumer<PluginDescript
      * @param pluginDescriptor
      * @throws IllegalStateException in case the checked prerequisites are not met
      */
+    @Override
     void accept(PluginDescriptor pluginDescriptor);
 }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultLegacySupport.java b/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultLegacySupport.java
index 79acd24b30..bf9a478819 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultLegacySupport.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultLegacySupport.java
@@ -40,6 +40,7 @@ public class DefaultLegacySupport implements LegacySupport {
 
     private static final ThreadLocal<AtomicReference<MavenSession>> SESSION = new InheritableThreadLocal<>();
 
+    @Override
     public void setSession(MavenSession session) {
         AtomicReference<MavenSession> reference = DefaultLegacySupport.SESSION.get();
         if (reference != null) {
@@ -53,11 +54,13 @@ public void setSession(MavenSession session) {
         }
     }
 
+    @Override
     public MavenSession getSession() {
         AtomicReference<MavenSession> currentSession = DefaultLegacySupport.SESSION.get();
         return currentSession != null ? currentSession.get() : null;
     }
 
+    @Override
     public RepositorySystemSession getRepositorySession() {
         MavenSession session = getSession();
         return (session != null) ? session.getRepositorySession() : null;
diff --git a/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java b/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java
index b1b0da0b36..7d55730f5d 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java
@@ -193,6 +193,7 @@ public DefaultMavenPluginManager(
         this.prerequisitesCheckers = prerequisitesCheckers;
     }
 
+    @Override
     public PluginDescriptor getPluginDescriptor(
             Plugin plugin, List<RemoteRepository> repositories, RepositorySystemSession session)
             throws PluginResolutionException, PluginDescriptorParsingException, InvalidPluginDescriptorException {
@@ -283,6 +284,7 @@ private PluginDescriptor parsePluginDescriptor(
         }
     }
 
+    @Override
     public MojoDescriptor getMojoDescriptor(
             Plugin plugin, String goal, List<RemoteRepository> repositories, RepositorySystemSession session)
             throws MojoNotFoundException, PluginResolutionException, PluginDescriptorParsingException,
@@ -329,6 +331,7 @@ public void checkRequiredMavenVersion(PluginDescriptor pluginDescriptor) throws
         checkPrerequisites(pluginDescriptor);
     }
 
+    @Override
     public void setupPluginRealm(
             PluginDescriptor pluginDescriptor,
             MavenSession session,
@@ -493,6 +496,7 @@ private Map<String, ClassLoader> calcImports(
         return foreignImports;
     }
 
+    @Override
     public <T> T getConfiguredMojo(Class<T> mojoInterface, MavenSession session, MojoExecution mojoExecution)
             throws PluginConfigurationException, PluginContainerException {
         MojoDescriptor mojoDescriptor = mojoExecution.getMojoDescriptor();
@@ -907,6 +911,7 @@ private void validateParameters(
         }
     }
 
+    @Override
     public void releaseMojo(Object mojo, MojoExecution mojoExecution) {
         if (mojo != null) {
             try {
@@ -927,6 +932,7 @@ public void releaseMojo(Object mojo, MojoExecution mojoExecution) {
         }
     }
 
+    @Override
     public ExtensionRealmCache.CacheRecord setupExtensionsRealm(
             MavenProject project, Plugin plugin, RepositorySystemSession session) throws PluginManagerException {
         @SuppressWarnings("unchecked")
diff --git a/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java b/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
index 16aee3db31..f4e667ac64 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
@@ -97,6 +97,7 @@ private Artifact toArtifact(Plugin plugin, RepositorySystemSession session) {
                 session.getArtifactTypeRegistry().get("maven-plugin"));
     }
 
+    @Override
     public Artifact resolve(Plugin plugin, List<RemoteRepository> repositories, RepositorySystemSession session)
             throws PluginResolutionException {
         RequestTrace trace = RequestTrace.newChild(null, plugin);
@@ -161,6 +162,7 @@ public DependencyResult resolveCoreExtension(
         return resolveInternal(plugin, null /* pluginArtifact */, dependencyFilter, repositories, session);
     }
 
+    @Override
     public DependencyResult resolvePlugin(
             Plugin plugin,
             Artifact pluginArtifact,
@@ -171,6 +173,7 @@ public DependencyResult resolvePlugin(
         return resolveInternal(plugin, pluginArtifact, dependencyFilter, repositories, session);
     }
 
+    @Override
     public DependencyNode resolve(
             Plugin plugin,
             Artifact pluginArtifact,
diff --git a/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/MojoLogWrapper.java b/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/MojoLogWrapper.java
index 2ffd05ba85..d474a203cb 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/MojoLogWrapper.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/MojoLogWrapper.java
@@ -32,6 +32,7 @@ public MojoLogWrapper(Logger logger) {
         this.logger = requireNonNull(logger);
     }
 
+    @Override
     public void debug(CharSequence content) {
         if (isDebugEnabled()) {
             logger.debug(toString(content));
diff --git a/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/PlexusContainerDefaultDependenciesValidator.java b/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/PlexusContainerDefaultDependenciesValidator.java
index c0ea4e0323..31638139a3 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/PlexusContainerDefaultDependenciesValidator.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/PlexusContainerDefaultDependenciesValidator.java
@@ -41,6 +41,7 @@ class PlexusContainerDefaultDependenciesValidator extends AbstractMavenPluginDep
         super(pluginValidationManager);
     }
 
+    @Override
     protected void doValidate(
             RepositorySystemSession session,
             Artifact pluginArtifact,
diff --git a/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/ValidatingConfigurationListener.java b/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/ValidatingConfigurationListener.java
index c87d6a6588..2cc4f35719 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/ValidatingConfigurationListener.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/ValidatingConfigurationListener.java
@@ -56,6 +56,7 @@ public Collection<Parameter> getMissingParameters() {
         return missingParameters.values();
     }
 
+    @Override
     public void notifyFieldChangeUsingSetter(String fieldName, Object value, Object target) {
         delegate.notifyFieldChangeUsingSetter(fieldName, value, target);
 
@@ -64,6 +65,7 @@ public void notifyFieldChangeUsingSetter(String fieldName, Object value, Object
         }
     }
 
+    @Override
     public void notifyFieldChangeUsingReflection(String fieldName, Object value, Object target) {
         delegate.notifyFieldChangeUsingReflection(fieldName, value, target);
 
diff --git a/impl/maven-core/src/main/java/org/apache/maven/plugin/prefix/DefaultPluginPrefixRequest.java b/impl/maven-core/src/main/java/org/apache/maven/plugin/prefix/DefaultPluginPrefixRequest.java
index 9b1e68a77d..f3da42c028 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/plugin/prefix/DefaultPluginPrefixRequest.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/plugin/prefix/DefaultPluginPrefixRequest.java
@@ -71,20 +71,24 @@ public DefaultPluginPrefixRequest(String prefix, MavenSession session) {
         setPluginGroups(session.getPluginGroups());
     }
 
+    @Override
     public String getPrefix() {
         return prefix;
     }
 
+    @Override
     public DefaultPluginPrefixRequest setPrefix(String prefix) {
         this.prefix = prefix;
 
         return this;
     }
 
+    @Override
     public List<String> getPluginGroups() {
         return pluginGroups;
     }
 
+    @Override
     public DefaultPluginPrefixRequest setPluginGroups(List<String> pluginGroups) {
         if (pluginGroups != null) {
             this.pluginGroups = Collections.unmodifiableList(pluginGroups);
@@ -95,20 +99,24 @@ public DefaultPluginPrefixRequest setPluginGroups(List<String> pluginGroups) {
         return this;
     }
 
+    @Override
     public Model getPom() {
         return pom;
     }
 
+    @Override
     public DefaultPluginPrefixRequest setPom(Model pom) {
         this.pom = pom;
 
         return this;
     }
 
+    @Override
     public List<RemoteRepository> getRepositories() {
         return repositories;
     }
 
+    @Override
     public DefaultPluginPrefixRequest setRepositories(List<RemoteRepository> repositories) {
         if (repositories != null) {
             this.repositories = Collections.unmodifiableList(repositories);
@@ -119,10 +127,12 @@ public DefaultPluginPrefixRequest setRepositories(List<RemoteRepository> reposit
         return this;
     }
 
+    @Override
     public RepositorySystemSession getRepositorySession() {
         return session;
     }
 
+    @Override
     public DefaultPluginPrefixRequest setRepositorySession(RepositorySystemSession session) {
         this.session = session;
 
diff --git a/impl/maven-core/src/main/java/org/apache/maven/plugin/prefix/internal/DefaultPluginPrefixResolver.java b/impl/maven-core/src/main/java/org/apache/maven/plugin/prefix/internal/DefaultPluginPrefixResolver.java
index c616533cea..dd811f2c1e 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/plugin/prefix/internal/DefaultPluginPrefixResolver.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/plugin/prefix/internal/DefaultPluginPrefixResolver.java
@@ -77,6 +77,7 @@ public DefaultPluginPrefixResolver(
         this.metadataReader = metadataReader;
     }
 
+    @Override
     public PluginPrefixResult resolve(PluginPrefixRequest request) throws NoPluginFoundForPrefixException {
         logger.debug("Resolving plugin prefix {} from {}", request.getPrefix(), request.getPluginGroups());
 
diff --git a/impl/maven-core/src/main/java/org/apache/maven/plugin/prefix/internal/DefaultPluginPrefixResult.java b/impl/maven-core/src/main/java/org/apache/maven/plugin/prefix/internal/DefaultPluginPrefixResult.java
index ad6431a737..8e993ecf49 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/plugin/prefix/internal/DefaultPluginPrefixResult.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/plugin/prefix/internal/DefaultPluginPrefixResult.java
@@ -50,6 +50,7 @@ class DefaultPluginPrefixResult implements PluginPrefixResult {
         this.repository = repository;
     }
 
+    @Override
     public String getGroupId() {
         return groupId;
     }
@@ -58,6 +59,7 @@ public void setGroupId(String groupId) {
         this.groupId = groupId;
     }
 
+    @Override
     public String getArtifactId() {
         return artifactId;
     }
@@ -66,6 +68,7 @@ public void setArtifactId(String artifactId) {
         this.artifactId = artifactId;
     }
 
+    @Override
     public ArtifactRepository getRepository() {
         return repository;
     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/plugin/version/DefaultPluginVersionRequest.java b/impl/maven-core/src/main/java/org/apache/maven/plugin/version/DefaultPluginVersionRequest.java
index bd88b69342..2e4373fc6c 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/plugin/version/DefaultPluginVersionRequest.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/plugin/version/DefaultPluginVersionRequest.java
@@ -86,40 +86,48 @@ public DefaultPluginVersionRequest(
         setRepositories(repositories);
     }
 
+    @Override
     public String getGroupId() {
         return groupId;
     }
 
+    @Override
     public DefaultPluginVersionRequest setGroupId(String groupId) {
         this.groupId = groupId;
 
         return this;
     }
 
+    @Override
     public String getArtifactId() {
         return artifactId;
     }
 
+    @Override
     public DefaultPluginVersionRequest setArtifactId(String artifactId) {
         this.artifactId = artifactId;
 
         return this;
     }
 
+    @Override
     public Model getPom() {
         return pom;
     }
 
+    @Override
     public DefaultPluginVersionRequest setPom(Model pom) {
         this.pom = pom;
 
         return this;
     }
 
+    @Override
     public List<RemoteRepository> getRepositories() {
         return repositories;
     }
 
+    @Override
     public DefaultPluginVersionRequest setRepositories(List<RemoteRepository> repositories) {
         if (repositories != null) {
             this.repositories = Collections.unmodifiableList(repositories);
@@ -130,10 +138,12 @@ public DefaultPluginVersionRequest setRepositories(List<RemoteRepository> reposi
         return this;
     }
 
+    @Override
     public RepositorySystemSession getRepositorySession() {
         return session;
     }
 
+    @Override
     public DefaultPluginVersionRequest setRepositorySession(RepositorySystemSession session) {
         this.session = session;
 
diff --git a/impl/maven-core/src/main/java/org/apache/maven/plugin/version/internal/DefaultPluginVersionResult.java b/impl/maven-core/src/main/java/org/apache/maven/plugin/version/internal/DefaultPluginVersionResult.java
index f8bf0b19c6..f17d1693e4 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/plugin/version/internal/DefaultPluginVersionResult.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/plugin/version/internal/DefaultPluginVersionResult.java
@@ -40,6 +40,7 @@ class DefaultPluginVersionResult implements PluginVersionResult {
         this.version = version;
     }
 
+    @Override
     public String getVersion() {
         return version;
     }
@@ -48,6 +49,7 @@ public void setVersion(String version) {
         this.version = version;
     }
 
+    @Override
     public ArtifactRepository getRepository() {
         return repository;
     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/project/DefaultDependencyResolutionRequest.java b/impl/maven-core/src/main/java/org/apache/maven/project/DefaultDependencyResolutionRequest.java
index 40aca60fd1..92c05ca420 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/project/DefaultDependencyResolutionRequest.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/project/DefaultDependencyResolutionRequest.java
@@ -40,28 +40,34 @@ public DefaultDependencyResolutionRequest(MavenProject project, RepositorySystem
         setRepositorySession(session);
     }
 
+    @Override
     public DependencyFilter getResolutionFilter() {
         return filter;
     }
 
+    @Override
     public MavenProject getMavenProject() {
         return project;
     }
 
+    @Override
     public RepositorySystemSession getRepositorySession() {
         return session;
     }
 
+    @Override
     public DependencyResolutionRequest setResolutionFilter(DependencyFilter filter) {
         this.filter = filter;
         return this;
     }
 
+    @Override
     public DependencyResolutionRequest setMavenProject(MavenProject project) {
         this.project = project;
         return this;
     }
 
+    @Override
     public DependencyResolutionRequest setRepositorySession(RepositorySystemSession repositorySession) {
         this.session = repositorySession;
         return this;
diff --git a/impl/maven-core/src/main/java/org/apache/maven/project/DefaultDependencyResolutionResult.java b/impl/maven-core/src/main/java/org/apache/maven/project/DefaultDependencyResolutionResult.java
index 30d72e1e28..9bb33ff58b 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/project/DefaultDependencyResolutionResult.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/project/DefaultDependencyResolutionResult.java
@@ -43,6 +43,7 @@ class DefaultDependencyResolutionResult implements DependencyResolutionResult {
 
     private Map<Dependency, List<Exception>> resolutionErrors = new IdentityHashMap<>();
 
+    @Override
     public DependencyNode getDependencyGraph() {
         return root;
     }
@@ -51,10 +52,12 @@ public void setDependencyGraph(DependencyNode root) {
         this.root = root;
     }
 
+    @Override
     public List<Dependency> getDependencies() {
         return dependencies;
     }
 
+    @Override
     public List<Dependency> getResolvedDependencies() {
         return resolvedDependencies;
     }
@@ -64,10 +67,12 @@ public void addResolvedDependency(Dependency dependency) {
         resolvedDependencies.add(dependency);
     }
 
+    @Override
     public List<Dependency> getUnresolvedDependencies() {
         return unresolvedDependencies;
     }
 
+    @Override
     public List<Exception> getCollectionErrors() {
         return collectionErrors;
     }
@@ -80,6 +85,7 @@ public void setCollectionErrors(List<Exception> exceptions) {
         }
     }
 
+    @Override
     public List<Exception> getResolutionErrors(Dependency dependency) {
         List<Exception> errors = resolutionErrors.get(dependency);
         return (errors != null) ? Collections.unmodifiableList(errors) : Collections.emptyList();
diff --git a/impl/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectHelper.java b/impl/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectHelper.java
index b5ee23b4e8..75d7087e00 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectHelper.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectHelper.java
@@ -46,6 +46,7 @@ public DefaultMavenProjectHelper(ArtifactHandlerManager artifactHandlerManager)
         this.artifactHandlerManager = artifactHandlerManager;
     }
 
+    @Override
     public void attachArtifact(
             MavenProject project, String artifactType, String artifactClassifier, File artifactFile) {
         ArtifactHandler handler = null;
@@ -66,6 +67,7 @@ public void attachArtifact(
         attachArtifact(project, artifact);
     }
 
+    @Override
     public void attachArtifact(MavenProject project, String artifactType, File artifactFile) {
         ArtifactHandler handler = artifactHandlerManager.getArtifactHandler(artifactType);
 
@@ -77,6 +79,7 @@ public void attachArtifact(MavenProject project, String artifactType, File artif
         attachArtifact(project, artifact);
     }
 
+    @Override
     public void attachArtifact(MavenProject project, File artifactFile, String artifactClassifier) {
         Artifact projectArtifact = project.getArtifact();
 
@@ -100,6 +103,7 @@ public void attachArtifact(MavenProject project, Artifact artifact) {
         project.addAttachedArtifact(artifact);
     }
 
+    @Override
     public void addResource(
             MavenProject project, String resourceDirectory, List<String> includes, List<String> excludes) {
         Resource resource = new Resource();
@@ -110,6 +114,7 @@ public void addResource(
         project.addResource(resource);
     }
 
+    @Override
     public void addTestResource(
             MavenProject project, String resourceDirectory, List<String> includes, List<String> excludes) {
         Resource resource = new Resource();
diff --git a/impl/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuildingHelper.java b/impl/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuildingHelper.java
index 345ffeb658..f8f77c7cea 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuildingHelper.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuildingHelper.java
@@ -83,6 +83,7 @@ public DefaultProjectBuildingHelper(
         this.pluginManager = pluginManager;
     }
 
+    @Override
     public List<ArtifactRepository> createArtifactRepositories(
             List<Repository> pomRepositories,
             List<ArtifactRepository> externalRepositories,
@@ -134,6 +135,7 @@ public List<ArtifactRepository> createArtifactRepositories(
         return artifactRepositories;
     }
 
+    @Override
     public synchronized ProjectRealmCache.CacheRecord createProjectRealm(
             MavenProject project, Model model, ProjectBuildingRequest request)
             throws PluginResolutionException, PluginVersionResolutionException, PluginManagerException {
@@ -254,6 +256,7 @@ record = projectRealmCache.put(projectRealmKey, projectRealm, extensionArtifactF
         return record;
     }
 
+    @Override
     public void selectProjectRealm(MavenProject project) {
         ClassLoader projectRealm = project.getClassRealm();
 
diff --git a/impl/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuildingRequest.java b/impl/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuildingRequest.java
index dbf6611b0f..7f1fbddcb8 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuildingRequest.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuildingRequest.java
@@ -100,27 +100,33 @@ public DefaultProjectBuildingRequest(ProjectBuildingRequest request) {
         setRepositoryMerging(request.getRepositoryMerging());
     }
 
+    @Override
     public MavenProject getProject() {
         return project;
     }
 
+    @Override
     public void setProject(MavenProject mavenProject) {
         this.project = mavenProject;
     }
 
+    @Override
     public ProjectBuildingRequest setLocalRepository(ArtifactRepository localRepository) {
         this.localRepository = localRepository;
         return this;
     }
 
+    @Override
     public ArtifactRepository getLocalRepository() {
         return localRepository;
     }
 
+    @Override
     public List<ArtifactRepository> getRemoteRepositories() {
         return remoteRepositories;
     }
 
+    @Override
     public ProjectBuildingRequest setRemoteRepositories(List<ArtifactRepository> remoteRepositories) {
         if (remoteRepositories != null) {
             this.remoteRepositories = new ArrayList<>(remoteRepositories);
@@ -131,10 +137,12 @@ public ProjectBuildingRequest setRemoteRepositories(List<ArtifactRepository> rem
         return this;
     }
 
+    @Override
     public List<ArtifactRepository> getPluginArtifactRepositories() {
         return pluginArtifactRepositories;
     }
 
+    @Override
     public ProjectBuildingRequest setPluginArtifactRepositories(List<ArtifactRepository> pluginArtifactRepositories) {
         if (pluginArtifactRepositories != null) {
             this.pluginArtifactRepositories = new ArrayList<>(pluginArtifactRepositories);
@@ -145,10 +153,12 @@ public ProjectBuildingRequest setPluginArtifactRepositories(List<ArtifactReposit
         return this;
     }
 
+    @Override
     public Properties getSystemProperties() {
         return systemProperties;
     }
 
+    @Override
     public ProjectBuildingRequest setSystemProperties(Properties systemProperties) {
         if (systemProperties != null) {
             this.systemProperties = SystemProperties.copyProperties(systemProperties);
@@ -159,10 +169,12 @@ public ProjectBuildingRequest setSystemProperties(Properties systemProperties) {
         return this;
     }
 
+    @Override
     public Properties getUserProperties() {
         return userProperties;
     }
 
+    @Override
     public ProjectBuildingRequest setUserProperties(Properties userProperties) {
         if (userProperties != null) {
             this.userProperties = new Properties();
@@ -174,20 +186,24 @@ public ProjectBuildingRequest setUserProperties(Properties userProperties) {
         return this;
     }
 
+    @Override
     public boolean isProcessPlugins() {
         return processPlugins;
     }
 
+    @Override
     public ProjectBuildingRequest setProcessPlugins(boolean processPlugins) {
         this.processPlugins = processPlugins;
         return this;
     }
 
+    @Override
     public ProjectBuildingRequest setResolveDependencies(boolean resolveDependencies) {
         this.resolveDependencies = resolveDependencies;
         return this;
     }
 
+    @Override
     public boolean isResolveDependencies() {
         return resolveDependencies;
     }
@@ -198,6 +214,7 @@ public boolean isResolveDependencies() {
      * Commit 6cf9320942c34bc68205425ab696b1712ace9ba4 updated the way 'MavenProject' objects are initialized.
      */
     @Deprecated
+    @Override
     public ProjectBuildingRequest setResolveVersionRanges(boolean value) {
         this.resolveVersionRanges = value;
         return this;
@@ -209,23 +226,28 @@ public ProjectBuildingRequest setResolveVersionRanges(boolean value) {
      * Commit 6cf9320942c34bc68205425ab696b1712ace9ba4 updated the way 'MavenProject' objects are initialized.
      */
     @Deprecated
+    @Override
     public boolean isResolveVersionRanges() {
         return this.resolveVersionRanges;
     }
 
+    @Override
     public ProjectBuildingRequest setValidationLevel(int validationLevel) {
         this.validationLevel = validationLevel;
         return this;
     }
 
+    @Override
     public int getValidationLevel() {
         return validationLevel;
     }
 
+    @Override
     public List<String> getActiveProfileIds() {
         return activeProfileIds;
     }
 
+    @Override
     public void setActiveProfileIds(List<String> activeProfileIds) {
         if (activeProfileIds != null) {
             this.activeProfileIds = new ArrayList<>(activeProfileIds);
@@ -234,10 +256,12 @@ public void setActiveProfileIds(List<String> activeProfileIds) {
         }
     }
 
+    @Override
     public List<String> getInactiveProfileIds() {
         return inactiveProfileIds;
     }
 
+    @Override
     public void setInactiveProfileIds(List<String> inactiveProfileIds) {
         if (inactiveProfileIds != null) {
             this.inactiveProfileIds = new ArrayList<>(inactiveProfileIds);
@@ -246,6 +270,7 @@ public void setInactiveProfileIds(List<String> inactiveProfileIds) {
         }
     }
 
+    @Override
     public void setProfiles(List<Profile> profiles) {
         if (profiles != null) {
             this.profiles = new ArrayList<>(profiles);
@@ -254,46 +279,56 @@ public void setProfiles(List<Profile> profiles) {
         }
     }
 
+    @Override
     public void addProfile(Profile profile) {
         profiles.add(profile);
     }
 
+    @Override
     public List<Profile> getProfiles() {
         return profiles;
     }
 
     @Deprecated
+    @Override
     public Date getBuildStartTime() {
         return buildStartTime != null ? new Date(buildStartTime.toEpochMilli()) : null;
     }
 
     @Deprecated
+    @Override
     public void setBuildStartTime(Date buildStartTime) {
         setBuildStartInstant(buildStartTime != null ? Instant.ofEpochMilli(buildStartTime.getTime()) : null);
     }
 
+    @Override
     public Instant getBuildStartInstant() {
         return this.buildStartTime;
     }
 
+    @Override
     public void setBuildStartInstant(Instant buildStartTime) {
         this.buildStartTime = buildStartTime;
     }
 
+    @Override
     public RepositorySystemSession getRepositorySession() {
         return repositorySession;
     }
 
+    @Override
     public DefaultProjectBuildingRequest setRepositorySession(RepositorySystemSession repositorySession) {
         this.repositorySession = repositorySession;
         return this;
     }
 
+    @Override
     public DefaultProjectBuildingRequest setRepositoryMerging(RepositoryMerging repositoryMerging) {
         this.repositoryMerging = Objects.requireNonNull(repositoryMerging, "repositoryMerging cannot be null");
         return this;
     }
 
+    @Override
     public RepositoryMerging getRepositoryMerging() {
         return repositoryMerging;
     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuildingResult.java b/impl/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuildingResult.java
index 65bc41bda5..7c0eed6fce 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuildingResult.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuildingResult.java
@@ -73,22 +73,27 @@ class DefaultProjectBuildingResult implements ProjectBuildingResult {
         this.dependencyResolutionResult = null;
     }
 
+    @Override
     public String getProjectId() {
         return projectId;
     }
 
+    @Override
     public File getPomFile() {
         return pomFile;
     }
 
+    @Override
     public MavenProject getProject() {
         return project;
     }
 
+    @Override
     public List<ModelProblem> getProblems() {
         return problems;
     }
 
+    @Override
     public DependencyResolutionResult getDependencyResolutionResult() {
         return dependencyResolutionResult;
     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/project/DefaultProjectDependenciesResolver.java b/impl/maven-core/src/main/java/org/apache/maven/project/DefaultProjectDependenciesResolver.java
index ab8407e625..20123cc954 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/project/DefaultProjectDependenciesResolver.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/project/DefaultProjectDependenciesResolver.java
@@ -68,6 +68,7 @@ public DefaultProjectDependenciesResolver(
         this.decorators = decorators;
     }
 
+    @Override
     public DependencyResolutionResult resolve(DependencyResolutionRequest request)
             throws DependencyResolutionException {
         final RequestTrace trace = RequestTrace.newChild(null, request);
diff --git a/impl/maven-core/src/main/java/org/apache/maven/project/DefaultProjectRealmCache.java b/impl/maven-core/src/main/java/org/apache/maven/project/DefaultProjectRealmCache.java
index 613367bc26..82a1a814c1 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/project/DefaultProjectRealmCache.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/project/DefaultProjectRealmCache.java
@@ -85,10 +85,12 @@ public Key createKey(List<? extends ClassRealm> extensionRealms) {
         return new CacheKey(extensionRealms);
     }
 
+    @Override
     public CacheRecord get(Key key) {
         return cache.get(key);
     }
 
+    @Override
     public CacheRecord put(Key key, ClassRealm projectRealm, DependencyFilter extensionArtifactFilter) {
         Objects.requireNonNull(projectRealm, "projectRealm cannot be null");
 
@@ -103,6 +105,7 @@ public CacheRecord put(Key key, ClassRealm projectRealm, DependencyFilter extens
         return record;
     }
 
+    @Override
     public void flush() {
         for (CacheRecord record : cache.values()) {
             ClassRealm realm = record.getRealm();
@@ -115,6 +118,7 @@ public void flush() {
         cache.clear();
     }
 
+    @Override
     public void register(MavenProject project, Key key, CacheRecord record) {
         // default cache does not track record usage
     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/project/ProjectModelResolver.java b/impl/maven-core/src/main/java/org/apache/maven/project/ProjectModelResolver.java
index f8605c4cda..7b03a2d87b 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/project/ProjectModelResolver.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/project/ProjectModelResolver.java
@@ -110,6 +110,7 @@ private ProjectModelResolver(ProjectModelResolver original) {
         this.modelPool = original.modelPool;
     }
 
+    @Override
     public void addRepository(Repository repository) throws InvalidRepositoryException {
         addRepository(repository, false);
     }
@@ -149,10 +150,12 @@ private static void removeMatchingRepository(Iterable<RemoteRepository> reposito
         }
     }
 
+    @Override
     public ModelResolver newCopy() {
         return new ProjectModelResolver(this);
     }
 
+    @Override
     public ModelSource resolveModel(String groupId, String artifactId, String version)
             throws UnresolvableModelException {
         File pomFile = null;
diff --git a/impl/maven-core/src/main/java/org/apache/maven/project/artifact/AttachedArtifact.java b/impl/maven-core/src/main/java/org/apache/maven/project/artifact/AttachedArtifact.java
index aa6a36c252..b3938f4b85 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/project/artifact/AttachedArtifact.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/project/artifact/AttachedArtifact.java
@@ -70,97 +70,118 @@ public AttachedArtifact(Artifact parent, String type, ArtifactHandler artifactHa
         this(parent, type, null, artifactHandler);
     }
 
+    @Override
     public void setArtifactId(String artifactId) {
         throw new UnsupportedOperationException(
                 "Cannot change the artifactId for an attached artifact." + " It is derived from the main artifact.");
     }
 
+    @Override
     public List<ArtifactVersion> getAvailableVersions() {
         return parent.getAvailableVersions();
     }
 
+    @Override
     public void setAvailableVersions(List<ArtifactVersion> availableVersions) {
         throw new UnsupportedOperationException("Cannot change the version information for an attached artifact."
                 + " It is derived from the main artifact.");
     }
 
+    @Override
     public String getBaseVersion() {
         return parent.getBaseVersion();
     }
 
+    @Override
     public void setBaseVersion(String baseVersion) {
         throw new UnsupportedOperationException("Cannot change the version information for an attached artifact."
                 + " It is derived from the main artifact.");
     }
 
+    @Override
     public String getDownloadUrl() {
         return parent.getDownloadUrl();
     }
 
+    @Override
     public void setDownloadUrl(String downloadUrl) {
         throw new UnsupportedOperationException("Cannot change the download information for an attached artifact."
                 + " It is derived from the main artifact.");
     }
 
+    @Override
     public void setGroupId(String groupId) {
         throw new UnsupportedOperationException(
                 "Cannot change the groupId for an attached artifact." + " It is derived from the main artifact.");
     }
 
+    @Override
     public ArtifactRepository getRepository() {
         return parent.getRepository();
     }
 
+    @Override
     public void setRepository(ArtifactRepository repository) {
         throw new UnsupportedOperationException("Cannot change the repository information for an attached artifact."
                 + " It is derived from the main artifact.");
     }
 
+    @Override
     public String getScope() {
         return parent.getScope();
     }
 
+    @Override
     public void setScope(String scope) {
         throw new UnsupportedOperationException("Cannot change the scoping information for an attached artifact."
                 + " It is derived from the main artifact.");
     }
 
+    @Override
     public String getVersion() {
         return parent.getVersion();
     }
 
+    @Override
     public void setVersion(String version) {
         throw new UnsupportedOperationException("Cannot change the version information for an attached artifact."
                 + " It is derived from the main artifact.");
     }
 
+    @Override
     public VersionRange getVersionRange() {
         return parent.getVersionRange();
     }
 
+    @Override
     public void setVersionRange(VersionRange range) {
         throw new UnsupportedOperationException("Cannot change the version information for an attached artifact."
                 + " It is derived from the main artifact.");
     }
 
+    @Override
     public boolean isRelease() {
         return parent.isRelease();
     }
 
+    @Override
     public void setRelease(boolean release) {
         throw new UnsupportedOperationException("Cannot change the version information for an attached artifact."
                 + " It is derived from the main artifact.");
     }
 
+    @Override
     public boolean isSnapshot() {
         return parent.isSnapshot();
     }
 
+    @Override
     public void addMetadata(ArtifactMetadata metadata) {
         // ignore. The parent artifact will handle metadata.
         // we must fail silently here to avoid problems with the artifact transformers.
     }
 
+    @Override
     public Collection<ArtifactMetadata> getMetadataList() {
         return Collections.emptyList();
     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/project/artifact/PluginArtifact.java b/impl/maven-core/src/main/java/org/apache/maven/project/artifact/PluginArtifact.java
index 18c3442d06..761741db32 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/project/artifact/PluginArtifact.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/project/artifact/PluginArtifact.java
@@ -47,10 +47,12 @@ public PluginArtifact(Plugin plugin, Artifact pluginArtifact) {
         setResolved(true);
     }
 
+    @Override
     public List<Dependency> getDependencies() {
         return plugin.getDependencies();
     }
 
+    @Override
     public List<Dependency> getManagedDependencies() {
         return Collections.emptyList();
     }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/project/artifact/ProjectArtifact.java b/impl/maven-core/src/main/java/org/apache/maven/project/artifact/ProjectArtifact.java
index c040fc9344..100dad21d6 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/project/artifact/ProjectArtifact.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/project/artifact/ProjectArtifact.java
@@ -51,10 +51,12 @@ public MavenProject getProject() {
         return project;
     }
 
+    @Override
     public List<Dependency> getDependencies() {
         return project.getModel().getDependencies();
     }
 
+    @Override
     public List<Dependency> getManagedDependencies() {
         DependencyManagement depMngt = project.getModel().getDependencyManagement();
         return (depMngt != null) ? Collections.unmodifiableList(depMngt.getDependencies()) : Collections.emptyList();
diff --git a/impl/maven-core/src/main/java/org/apache/maven/resolver/MavenChainedWorkspaceReader.java b/impl/maven-core/src/main/java/org/apache/maven/resolver/MavenChainedWorkspaceReader.java
index 06ac4b0a0c..162988b243 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/resolver/MavenChainedWorkspaceReader.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/resolver/MavenChainedWorkspaceReader.java
@@ -138,6 +138,7 @@ public String getContentType() {
             return type;
         }
 
+        @Override
         public boolean equals(Object obj) {
             if (this == obj) {
                 return true;
@@ -146,6 +147,7 @@ public boolean equals(Object obj) {
             }
         }
 
+        @Override
         public int hashCode() {
             return this.keys.hashCode();
         }
diff --git a/impl/maven-core/src/main/java/org/apache/maven/session/scope/internal/SessionScope.java b/impl/maven-core/src/main/java/org/apache/maven/session/scope/internal/SessionScope.java
index 31cfc0f7af..281f2b3b86 100644
--- a/impl/maven-core/src/main/java/org/apache/maven/session/scope/internal/SessionScope.java
+++ b/impl/maven-core/src/main/java/org/apache/maven/session/scope/internal/SessionScope.java
@@ -34,6 +34,7 @@ public <T> void seed(Class<T> clazz, Provider<T> value) {
         getScopeState().seed(clazz, value::get);
     }
 
+    @Override
     public <T> Provider<T> scope(final Key<T> key, final Provider<T> unscoped) {
         Object qualifier = key.getAnnotation() instanceof Named n ? n.value() : key.getAnnotation();
         org.apache.maven.di.Key<T> k =
diff --git a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/DelegatingMojoExecutionListener.java b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/DelegatingMojoExecutionListener.java
index 843938f5a3..74306ea7c6 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/DelegatingMojoExecutionListener.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/DelegatingMojoExecutionListener.java
@@ -33,18 +33,21 @@
 public class DelegatingMojoExecutionListener implements MojoExecutionListener {
     private final List<MojoExecutionListener> listeners = new CopyOnWriteArrayList<>();
 
+    @Override
     public void beforeMojoExecution(MojoExecutionEvent event) throws MojoExecutionException {
         for (MojoExecutionListener listener : listeners) {
             listener.beforeMojoExecution(event);
         }
     }
 
+    @Override
     public void afterMojoExecutionSuccess(MojoExecutionEvent event) throws MojoExecutionException {
         for (MojoExecutionListener listener : listeners) {
             listener.afterMojoExecutionSuccess(event);
         }
     }
 
+    @Override
     public void afterExecutionFailure(MojoExecutionEvent event) {
         for (MojoExecutionListener listener : listeners) {
             listener.afterExecutionFailure(event);
diff --git a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/DelegatingProjectExecutionListener.java b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/DelegatingProjectExecutionListener.java
index d90c373340..09b62b9ea3 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/DelegatingProjectExecutionListener.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/DelegatingProjectExecutionListener.java
@@ -32,24 +32,28 @@
 public class DelegatingProjectExecutionListener implements ProjectExecutionListener {
     private final List<ProjectExecutionListener> listeners = new CopyOnWriteArrayList<>();
 
+    @Override
     public void beforeProjectExecution(ProjectExecutionEvent event) throws LifecycleExecutionException {
         for (ProjectExecutionListener listener : listeners) {
             listener.beforeProjectExecution(event);
         }
     }
 
+    @Override
     public void beforeProjectLifecycleExecution(ProjectExecutionEvent event) throws LifecycleExecutionException {
         for (ProjectExecutionListener listener : listeners) {
             listener.beforeProjectLifecycleExecution(event);
         }
     }
 
+    @Override
     public void afterProjectExecutionSuccess(ProjectExecutionEvent event) throws LifecycleExecutionException {
         for (ProjectExecutionListener listener : listeners) {
             listener.afterProjectExecutionSuccess(event);
         }
     }
 
+    @Override
     public void afterProjectExecutionFailure(ProjectExecutionEvent event) {
         for (ProjectExecutionListener listener : listeners) {
             listener.afterProjectExecutionFailure(event);
diff --git a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/EmptyLifecyclePluginAnalyzer.java b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/EmptyLifecyclePluginAnalyzer.java
index a73adacbb0..4d0593684f 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/EmptyLifecyclePluginAnalyzer.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/EmptyLifecyclePluginAnalyzer.java
@@ -28,6 +28,7 @@
 /**
  */
 public class EmptyLifecyclePluginAnalyzer implements LifeCyclePluginAnalyzer {
+    @Override
     public Set<Plugin> getPluginsBoundByDefaultToAllLifecycles(String packaging) {
         Set<Plugin> plugins;
 
diff --git a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/LifecycleExecutorTest.java b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/LifecycleExecutorTest.java
index 800d4bf599..ca45e941b4 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/LifecycleExecutorTest.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/LifecycleExecutorTest.java
@@ -401,6 +401,7 @@ public List<MavenProject> getDownstreamProjects(MavenProject project, boolean tr
         final List<String> log = new ArrayList<>();
 
         MojoExecutionListener mojoListener = new MojoExecutionListener() {
+            @Override
             public void beforeMojoExecution(MojoExecutionEvent event) throws MojoExecutionException {
                 assertNotNull(event.getSession());
                 assertNotNull(event.getProject());
@@ -412,6 +413,7 @@ public void beforeMojoExecution(MojoExecutionEvent event) throws MojoExecutionEx
                         + event.getExecution().getExecutionId());
             }
 
+            @Override
             public void afterMojoExecutionSuccess(MojoExecutionEvent event) throws MojoExecutionException {
                 assertNotNull(event.getSession());
                 assertNotNull(event.getProject());
@@ -423,6 +425,7 @@ public void afterMojoExecutionSuccess(MojoExecutionEvent event) throws MojoExecu
                         + event.getExecution().getExecutionId());
             }
 
+            @Override
             public void afterExecutionFailure(MojoExecutionEvent event) {
                 assertNotNull(event.getSession());
                 assertNotNull(event.getProject());
@@ -435,6 +438,7 @@ public void afterExecutionFailure(MojoExecutionEvent event) {
             }
         };
         ProjectExecutionListener projectListener = new ProjectExecutionListener() {
+            @Override
             public void beforeProjectExecution(ProjectExecutionEvent event) throws LifecycleExecutionException {
                 assertNotNull(event.getSession());
                 assertNotNull(event.getProject());
@@ -444,6 +448,7 @@ public void beforeProjectExecution(ProjectExecutionEvent event) throws Lifecycle
                 log.add("beforeProjectExecution " + event.getProject().getArtifactId());
             }
 
+            @Override
             public void beforeProjectLifecycleExecution(ProjectExecutionEvent event)
                     throws LifecycleExecutionException {
                 assertNotNull(event.getSession());
@@ -454,6 +459,7 @@ public void beforeProjectLifecycleExecution(ProjectExecutionEvent event)
                 log.add("beforeProjectLifecycleExecution " + event.getProject().getArtifactId());
             }
 
+            @Override
             public void afterProjectExecutionSuccess(ProjectExecutionEvent event) throws LifecycleExecutionException {
                 assertNotNull(event.getSession());
                 assertNotNull(event.getProject());
@@ -463,6 +469,7 @@ public void afterProjectExecutionSuccess(ProjectExecutionEvent event) throws Lif
                 log.add("afterProjectExecutionSuccess " + event.getProject().getArtifactId());
             }
 
+            @Override
             public void afterProjectExecutionFailure(ProjectExecutionEvent event) {
                 assertNotNull(event.getSession());
                 assertNotNull(event.getProject());
diff --git a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/BuildPluginManagerStub.java b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/BuildPluginManagerStub.java
index cbed25bebb..9566f569d1 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/BuildPluginManagerStub.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/BuildPluginManagerStub.java
@@ -34,19 +34,23 @@
  */
 public class BuildPluginManagerStub implements BuildPluginManager {
 
+    @Override
     public PluginDescriptor loadPlugin(
             Plugin plugin, List<RemoteRepository> repositories, RepositorySystemSession session) {
         return null;
     }
 
+    @Override
     public MojoDescriptor getMojoDescriptor(
             Plugin plugin, String goal, List<RemoteRepository> repositories, RepositorySystemSession session) {
         return MojoExecutorStub.createMojoDescriptor(plugin);
     }
 
+    @Override
     public ClassRealm getPluginRealm(MavenSession session, PluginDescriptor pluginDescriptor) {
         return null;
     }
 
+    @Override
     public void executeMojo(MavenSession session, MojoExecution execution) {}
 }
diff --git a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/CompletionServiceStub.java b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/CompletionServiceStub.java
index cdfe05b537..76d1f5e6c7 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/CompletionServiceStub.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/CompletionServiceStub.java
@@ -53,6 +53,7 @@ public Future<ProjectSegment> submit(Callable<ProjectSegment> task) {
         return projectBuildFutureTask;
     }
 
+    @Override
     public Future<ProjectSegment> submit(Runnable task, ProjectSegment result) {
         FutureTask<ProjectSegment> projectBuildFutureTask = new FutureTask<>(task, result);
         projectBuildFutureTasks.add(projectBuildFutureTask);
@@ -62,14 +63,17 @@ public Future<ProjectSegment> submit(Runnable task, ProjectSegment result) {
         return projectBuildFutureTask;
     }
 
+    @Override
     public Future<ProjectSegment> take() throws InterruptedException {
         return null;
     }
 
+    @Override
     public Future<ProjectSegment> poll() {
         return null;
     }
 
+    @Override
     public Future<ProjectSegment> poll(long timeout, TimeUnit unit) throws InterruptedException {
         return null;
     }
diff --git a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/ExecutionEventCatapultStub.java b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/ExecutionEventCatapultStub.java
index a5e3bbe474..6946b5f3d6 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/ExecutionEventCatapultStub.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/ExecutionEventCatapultStub.java
@@ -27,7 +27,9 @@
  */
 public class ExecutionEventCatapultStub implements ExecutionEventCatapult {
 
+    @Override
     public void fire(Type eventType, MavenSession session, MojoExecution mojoExecution) {}
 
+    @Override
     public void fire(Type eventType, MavenSession session, MojoExecution mojoExecution, Exception exception) {}
 }
diff --git a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/LifeCyclePluginAnalyzerStub.java b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/LifeCyclePluginAnalyzerStub.java
index 4d605700c5..dec196ece0 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/LifeCyclePluginAnalyzerStub.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/LifeCyclePluginAnalyzerStub.java
@@ -29,6 +29,7 @@
 /**
  */
 public class LifeCyclePluginAnalyzerStub implements LifeCyclePluginAnalyzer {
+    @Override
     public Set<Plugin> getPluginsBoundByDefaultToAllLifecycles(String packaging) {
         Set<Plugin> plugins;
 
diff --git a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/LifecycleExecutionPlanCalculatorStub.java b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/LifecycleExecutionPlanCalculatorStub.java
index 6e97f804bc..fb10992ba9 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/LifecycleExecutionPlanCalculatorStub.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/LifecycleExecutionPlanCalculatorStub.java
@@ -119,6 +119,7 @@ public int getNumberOfExecutions(ProjectBuildList projectBuildList)
         return getNumberOfExceutions(projectBuildList);
     }
 
+    @Override
     public void calculateForkedExecutions(MojoExecution mojoExecution, MavenSession session)
             throws MojoNotFoundException, PluginNotFoundException, PluginResolutionException,
                     PluginDescriptorParsingException, NoPluginFoundForPrefixException, InvalidPluginDescriptorException,
@@ -126,6 +127,7 @@ public void calculateForkedExecutions(MojoExecution mojoExecution, MavenSession
         // Maybe do something ?
     }
 
+    @Override
     public MavenExecutionPlan calculateExecutionPlan(
             MavenSession session, MavenProject project, List<Task> tasks, boolean setup)
             throws PluginNotFoundException, PluginResolutionException, LifecyclePhaseNotFoundException,
@@ -144,6 +146,7 @@ public MavenExecutionPlan calculateExecutionPlan(
         return createExecutionPlan(project, me);
     }
 
+    @Override
     public MavenExecutionPlan calculateExecutionPlan(MavenSession session, MavenProject project, List<Task> tasks)
             throws PluginNotFoundException, PluginResolutionException, LifecyclePhaseNotFoundException,
                     PluginDescriptorParsingException, MojoNotFoundException, InvalidPluginDescriptorException,
@@ -151,6 +154,7 @@ public MavenExecutionPlan calculateExecutionPlan(MavenSession session, MavenProj
         return calculateExecutionPlan(session, project, tasks, true);
     }
 
+    @Override
     public void setupMojoExecution(
             MavenSession session,
             MavenProject project,
diff --git a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/LifecycleTaskSegmentCalculatorStub.java b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/LifecycleTaskSegmentCalculatorStub.java
index 46598d8929..7509149339 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/LifecycleTaskSegmentCalculatorStub.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/LifecycleTaskSegmentCalculatorStub.java
@@ -47,6 +47,7 @@ public LifecycleTaskSegmentCalculatorStub() {
         super(null, null);
     }
 
+    @Override
     public List<TaskSegment> calculateTaskSegments(MavenSession session, List<String> tasks)
             throws PluginNotFoundException, PluginResolutionException, PluginDescriptorParsingException,
                     MojoNotFoundException, NoPluginFoundForPrefixException, InvalidPluginDescriptorException,
@@ -78,6 +79,7 @@ public List<TaskSegment> calculateTaskSegments(MavenSession session, List<String
         return taskSegments;
     }
 
+    @Override
     public boolean requiresProject(MavenSession session) {
         return true;
     }
diff --git a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/PluginPrefixResolverStub.java b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/PluginPrefixResolverStub.java
index dd759f9515..8146513c14 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/PluginPrefixResolverStub.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/PluginPrefixResolverStub.java
@@ -27,16 +27,20 @@
 /**
  */
 public class PluginPrefixResolverStub implements PluginPrefixResolver {
+    @Override
     public PluginPrefixResult resolve(PluginPrefixRequest request) throws NoPluginFoundForPrefixException {
         return new PluginPrefixResult() {
+            @Override
             public String getGroupId() {
                 return "com.foobar";
             }
 
+            @Override
             public String getArtifactId() {
                 return "bazbaz";
             }
 
+            @Override
             public ArtifactRepository getRepository() {
                 return null;
             }
diff --git a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/PluginVersionResolverStub.java b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/PluginVersionResolverStub.java
index 6ec4beb959..e641fae595 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/PluginVersionResolverStub.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/PluginVersionResolverStub.java
@@ -28,12 +28,15 @@
  */
 public class PluginVersionResolverStub implements PluginVersionResolver {
 
+    @Override
     public PluginVersionResult resolve(PluginVersionRequest request) throws PluginVersionResolutionException {
         return new PluginVersionResult() {
+            @Override
             public String getVersion() {
                 return "0.42";
             }
 
+            @Override
             public ArtifactRepository getRepository() {
                 return null;
             }
diff --git a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/ProjectDependencyGraphStub.java b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/ProjectDependencyGraphStub.java
index f9a80b8659..38191d0fc4 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/ProjectDependencyGraphStub.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/ProjectDependencyGraphStub.java
@@ -156,14 +156,17 @@ private List<Dependency> getDependencies() {
         return dependencies;
     }
 
+    @Override
     public List<MavenProject> getAllProjects() {
         return Arrays.asList(A, B, C, X, Y, Z, UNKNOWN);
     }
 
+    @Override
     public List<MavenProject> getSortedProjects() {
         return Arrays.asList(A, B, C, X, Y, Z); // I'm not entirely sure about the order but this should do...
     }
 
+    @Override
     public List<MavenProject> getDownstreamProjects(MavenProject project, boolean transitive) {
         if (transitive) {
             throw new RuntimeException("Not implemented yet");
@@ -175,6 +178,7 @@ public List<MavenProject> getDownstreamProjects(MavenProject project, boolean tr
         return result;
     }
 
+    @Override
     public List<MavenProject> getUpstreamProjects(MavenProject project, boolean transitive) {
         List<MavenProject> result = new ArrayList<>();
         final List<Dependency> dependencies = getDependencies();
diff --git a/impl/maven-core/src/test/java/org/apache/maven/plugin/internal/DefaultLegacySupportTest.java b/impl/maven-core/src/test/java/org/apache/maven/plugin/internal/DefaultLegacySupportTest.java
index 4a643713df..e2b5c82443 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/plugin/internal/DefaultLegacySupportTest.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/plugin/internal/DefaultLegacySupportTest.java
@@ -55,6 +55,7 @@ class MyRunnable implements Runnable {
 
         private volatile MavenSession session;
 
+        @Override
         public void run() {
             try {
                 latch.await();
diff --git a/impl/maven-core/src/test/java/org/apache/maven/project/EmptyLifecycleExecutor.java b/impl/maven-core/src/test/java/org/apache/maven/project/EmptyLifecycleExecutor.java
index d455970391..0045bab0ee 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/project/EmptyLifecycleExecutor.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/project/EmptyLifecycleExecutor.java
@@ -37,16 +37,20 @@
  */
 public class EmptyLifecycleExecutor implements LifecycleExecutor {
 
+    @Override
     public MavenExecutionPlan calculateExecutionPlan(MavenSession session, String... tasks) {
         return new MavenExecutionPlan(null, null);
     }
 
+    @Override
     public MavenExecutionPlan calculateExecutionPlan(MavenSession session, boolean setup, String... tasks) {
         return new MavenExecutionPlan(null, null);
     }
 
+    @Override
     public void execute(MavenSession session) {}
 
+    @Override
     public Set<Plugin> getPluginsBoundByDefaultToAllLifecycles(String packaging) {
         Set<Plugin> plugins;
 
@@ -83,8 +87,10 @@ private Plugin newPlugin(String artifactId, String... goals) {
         return plugin;
     }
 
+    @Override
     public void calculateForkedExecutions(MojoExecution mojoExecution, MavenSession session) {}
 
+    @Override
     public List<MavenProject> executeForkedExecutions(MojoExecution mojoExecution, MavenSession session) {
         return Collections.emptyList();
     }
diff --git a/impl/maven-core/src/test/java/org/apache/maven/project/EmptyProjectBuildingHelper.java b/impl/maven-core/src/test/java/org/apache/maven/project/EmptyProjectBuildingHelper.java
index 4fc9356624..53fa6e156d 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/project/EmptyProjectBuildingHelper.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/project/EmptyProjectBuildingHelper.java
@@ -31,6 +31,7 @@
  */
 public class EmptyProjectBuildingHelper implements ProjectBuildingHelper {
 
+    @Override
     public List<ArtifactRepository> createArtifactRepositories(
             List<Repository> pomRepositories,
             List<ArtifactRepository> externalRepositories,
@@ -42,10 +43,12 @@ public List<ArtifactRepository> createArtifactRepositories(
         }
     }
 
+    @Override
     public ProjectRealmCache.CacheRecord createProjectRealm(
             MavenProject project, Model model, ProjectBuildingRequest request) {
         return new ProjectRealmCache.CacheRecord(null, null);
     }
 
+    @Override
     public void selectProjectRealm(MavenProject project) {}
 }
diff --git a/impl/maven-core/src/test/java/org/apache/maven/project/LegacyLocalRepositoryManager.java b/impl/maven-core/src/test/java/org/apache/maven/project/LegacyLocalRepositoryManager.java
index 91be145b7a..8539d58bb3 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/project/LegacyLocalRepositoryManager.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/project/LegacyLocalRepositoryManager.java
@@ -43,10 +43,12 @@ public class LegacyLocalRepositoryManager implements LocalRepositoryManager {
         this.repository = new LocalRepository(basedir.getAbsoluteFile(), "legacy");
     }
 
+    @Override
     public LocalRepository getRepository() {
         return repository;
     }
 
+    @Override
     public String getPathForLocalArtifact(Artifact artifact) {
         StringBuilder path = new StringBuilder(128);
 
@@ -65,14 +67,17 @@ public String getPathForLocalArtifact(Artifact artifact) {
         return path.toString();
     }
 
+    @Override
     public String getPathForRemoteArtifact(Artifact artifact, RemoteRepository repository, String context) {
         return getPathForLocalArtifact(artifact);
     }
 
+    @Override
     public String getPathForLocalMetadata(Metadata metadata) {
         return getPath(metadata, "local");
     }
 
+    @Override
     public String getPathForRemoteMetadata(Metadata metadata, RemoteRepository repository, String context) {
         return getPath(metadata, getRepositoryKey(repository, context));
     }
@@ -112,6 +117,7 @@ private String insertRepositoryKey(String filename, String repositoryKey) {
         return result;
     }
 
+    @Override
     public LocalArtifactResult find(RepositorySystemSession session, LocalArtifactRequest request) {
         String path = getPathForLocalArtifact(request.getArtifact());
         File file = new File(getRepository().getBasedir(), path);
@@ -125,10 +131,12 @@ public LocalArtifactResult find(RepositorySystemSession session, LocalArtifactRe
         return result;
     }
 
+    @Override
     public void add(RepositorySystemSession session, LocalArtifactRegistration request) {
         // noop
     }
 
+    @Override
     public LocalMetadataResult find(RepositorySystemSession session, LocalMetadataRequest request) {
         LocalMetadataResult result = new LocalMetadataResult(request);
 
@@ -152,10 +160,12 @@ public LocalMetadataResult find(RepositorySystemSession session, LocalMetadataRe
         return result;
     }
 
+    @Override
     public void add(RepositorySystemSession session, LocalMetadataRegistration request) {
         // noop
     }
 
+    @Override
     public String toString() {
         return String.valueOf(getRepository());
     }
diff --git a/impl/maven-core/src/test/java/org/apache/maven/project/harness/Xpp3DomAttributeIterator.java b/impl/maven-core/src/test/java/org/apache/maven/project/harness/Xpp3DomAttributeIterator.java
index 90790c929d..1c75d26c37 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/project/harness/Xpp3DomAttributeIterator.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/project/harness/Xpp3DomAttributeIterator.java
@@ -52,6 +52,7 @@ class Xpp3DomAttributeIterator implements NodeIterator {
                 .collect(Collectors.toList());
     }
 
+    @Override
     public NodePointer getNodePointer() {
         if (position == 0) {
             setPosition(1);
@@ -59,10 +60,12 @@ public NodePointer getNodePointer() {
         return (attribute == null) ? null : new Xpp3DomAttributePointer(parent, attribute);
     }
 
+    @Override
     public int getPosition() {
         return position;
     }
 
+    @Override
     public boolean setPosition(int position) {
         this.position = position;
         attribute = (position > 0 && position <= attributes.size()) ? attributes.get(position - 1) : null;
diff --git a/impl/maven-core/src/test/java/org/apache/maven/project/harness/Xpp3DomNodeIterator.java b/impl/maven-core/src/test/java/org/apache/maven/project/harness/Xpp3DomNodeIterator.java
index 5b0936ce5d..378848fab7 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/project/harness/Xpp3DomNodeIterator.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/project/harness/Xpp3DomNodeIterator.java
@@ -71,6 +71,7 @@ class Xpp3DomNodeIterator implements NodeIterator {
         }
     }
 
+    @Override
     public NodePointer getNodePointer() {
         if (position == 0) {
             setPosition(1);
@@ -78,10 +79,12 @@ public NodePointer getNodePointer() {
         return (child == null) ? null : new Xpp3DomNodePointer(parent, child);
     }
 
+    @Override
     public int getPosition() {
         return position;
     }
 
+    @Override
     public boolean setPosition(int position) {
         this.position = position;
         filterChildren(position);
diff --git a/impl/maven-core/src/test/java/org/apache/maven/project/harness/Xpp3DomPointerFactory.java b/impl/maven-core/src/test/java/org/apache/maven/project/harness/Xpp3DomPointerFactory.java
index 20ef83c504..8e96ff040c 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/project/harness/Xpp3DomPointerFactory.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/project/harness/Xpp3DomPointerFactory.java
@@ -31,10 +31,12 @@
  */
 public class Xpp3DomPointerFactory implements NodePointerFactory {
 
+    @Override
     public int getOrder() {
         return 200;
     }
 
+    @Override
     public NodePointer createNodePointer(QName name, Object object, Locale locale) {
         if (object instanceof org.codehaus.plexus.util.xml.Xpp3Dom xpp3Dom) {
             object = xpp3Dom.getDom();
@@ -45,6 +47,7 @@ public NodePointer createNodePointer(QName name, Object object, Locale locale) {
         return null;
     }
 
+    @Override
     public NodePointer createNodePointer(NodePointer parent, QName name, Object object) {
         if (object instanceof org.codehaus.plexus.util.xml.Xpp3Dom xpp3Dom) {
             object = xpp3Dom.getDom();
diff --git a/impl/maven-core/src/test/java/org/apache/maven/repository/TestRepositoryConnector.java b/impl/maven-core/src/test/java/org/apache/maven/repository/TestRepositoryConnector.java
index e9ab683c31..8f8f1d902a 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/repository/TestRepositoryConnector.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/repository/TestRepositoryConnector.java
@@ -66,8 +66,10 @@ public TestRepositoryConnector(RemoteRepository repository) {
         }
     }
 
+    @Override
     public void close() {}
 
+    @Override
     public void get(
             Collection<? extends ArtifactDownload> artifactDownloads,
             Collection<? extends MetadataDownload> metadataDownloads) {
@@ -137,6 +139,7 @@ private String path(Metadata metadata) {
         return path.toString();
     }
 
+    @Override
     public void put(
             Collection<? extends ArtifactUpload> artifactUploads,
             Collection<? extends MetadataUpload> metadataUploads) {
diff --git a/impl/maven-core/src/test/java/org/apache/maven/repository/TestRepositoryConnectorFactory.java b/impl/maven-core/src/test/java/org/apache/maven/repository/TestRepositoryConnectorFactory.java
index a5486391c0..8ad8268964 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/repository/TestRepositoryConnectorFactory.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/repository/TestRepositoryConnectorFactory.java
@@ -33,11 +33,13 @@
 @Singleton
 public class TestRepositoryConnectorFactory implements RepositoryConnectorFactory {
 
+    @Override
     public RepositoryConnector newInstance(RepositorySystemSession session, RemoteRepository repository)
             throws NoRepositoryConnectorException {
         return new TestRepositoryConnector(repository);
     }
 
+    @Override
     public float getPriority() {
         return 0;
     }
diff --git a/impl/maven-core/src/test/java/org/apache/maven/session/scope/SessionScopeProxyTest.java b/impl/maven-core/src/test/java/org/apache/maven/session/scope/SessionScopeProxyTest.java
index 4081b3c832..fc4f9253e8 100644
--- a/impl/maven-core/src/test/java/org/apache/maven/session/scope/SessionScopeProxyTest.java
+++ b/impl/maven-core/src/test/java/org/apache/maven/session/scope/SessionScopeProxyTest.java
@@ -123,14 +123,17 @@ static class MySessionScopedBean implements BeanItf {
         @Inject
         BeanItf2 anotherBean;
 
+        @Override
         public Session getSession() {
             return session;
         }
 
+        @Override
         public BeanItf2 getAnotherBean() {
             return anotherBean;
         }
 
+        @Override
         public void throwException() throws TestException {
             throw new TestException();
         }
diff --git a/impl/maven-impl/src/main/java/org/apache/maven/impl/cache/DefaultRequestCache.java b/impl/maven-impl/src/main/java/org/apache/maven/impl/cache/DefaultRequestCache.java
index ba1730330b..e525aa013a 100644
--- a/impl/maven-impl/src/main/java/org/apache/maven/impl/cache/DefaultRequestCache.java
+++ b/impl/maven-impl/src/main/java/org/apache/maven/impl/cache/DefaultRequestCache.java
@@ -40,6 +40,7 @@ public class DefaultRequestCache extends AbstractRequestCache {
 
     protected final Map<Object, CachingSupplier<?, ?>> forever = new ConcurrentHashMap<>();
 
+    @Override
     @SuppressWarnings("unchecked")
     protected <REQ extends Request<?>, REP extends Result<REQ>> CachingSupplier<REQ, REP> doCache(
             REQ req, Function<REQ, REP> supplier) {
diff --git a/impl/maven-impl/src/main/java/org/apache/maven/impl/cache/DefaultRequestCacheFactory.java b/impl/maven-impl/src/main/java/org/apache/maven/impl/cache/DefaultRequestCacheFactory.java
index 1600b80388..fa268de59e 100644
--- a/impl/maven-impl/src/main/java/org/apache/maven/impl/cache/DefaultRequestCacheFactory.java
+++ b/impl/maven-impl/src/main/java/org/apache/maven/impl/cache/DefaultRequestCacheFactory.java
@@ -27,6 +27,7 @@
 @Singleton
 public class DefaultRequestCacheFactory implements RequestCacheFactory {
 
+    @Override
     public RequestCache createCache() {
         return new DefaultRequestCache();
     }
diff --git a/impl/maven-impl/src/main/java/org/apache/maven/impl/di/MojoExecutionScope.java b/impl/maven-impl/src/main/java/org/apache/maven/impl/di/MojoExecutionScope.java
index e851871682..8447e70830 100644
--- a/impl/maven-impl/src/main/java/org/apache/maven/impl/di/MojoExecutionScope.java
+++ b/impl/maven-impl/src/main/java/org/apache/maven/impl/di/MojoExecutionScope.java
@@ -97,6 +97,7 @@ public <T> void seed(Class<T> clazz, final T value) {
 
     @SuppressWarnings("unchecked")
     @Nonnull
+    @Override
     public <T> Supplier<T> scope(@Nonnull Key<T> key, @Nonnull Supplier<T> unscoped) {
         return () -> {
             LinkedList<ScopeState> stack = values.get();
diff --git a/impl/maven-impl/src/main/java/org/apache/maven/impl/model/DefaultLifecycleBindingsInjector.java b/impl/maven-impl/src/main/java/org/apache/maven/impl/model/DefaultLifecycleBindingsInjector.java
index 876beeb36b..af2dad2003 100644
--- a/impl/maven-impl/src/main/java/org/apache/maven/impl/model/DefaultLifecycleBindingsInjector.java
+++ b/impl/maven-impl/src/main/java/org/apache/maven/impl/model/DefaultLifecycleBindingsInjector.java
@@ -62,6 +62,7 @@ public DefaultLifecycleBindingsInjector(LifecycleRegistry lifecycleRegistry, Pac
         this.packagingRegistry = packagingRegistry;
     }
 
+    @Override
     public Model injectLifecycleBindings(Model model, ModelBuilderRequest request, ModelProblemCollector problems) {
         String packagingId = model.getPackaging();
         Packaging packaging = packagingRegistry.lookup(packagingId).orElse(null);
diff --git a/impl/maven-impl/src/main/java/org/apache/maven/impl/model/DefaultModelBuilder.java b/impl/maven-impl/src/main/java/org/apache/maven/impl/model/DefaultModelBuilder.java
index 82ebd5a770..9cb5e35658 100644
--- a/impl/maven-impl/src/main/java/org/apache/maven/impl/model/DefaultModelBuilder.java
+++ b/impl/maven-impl/src/main/java/org/apache/maven/impl/model/DefaultModelBuilder.java
@@ -201,6 +201,7 @@ public DefaultModelBuilder(
         this.rootLocator = rootLocator;
     }
 
+    @Override
     public ModelBuilderSession newSession() {
         return new ModelBuilderSessionImpl();
     }
@@ -419,11 +420,13 @@ public ProblemCollector<ModelProblem> getProblemCollector() {
             return result.getProblemCollector();
         }
 
+        @Override
         public void setSource(String source) {
             this.source = source;
             this.sourceModel = null;
         }
 
+        @Override
         public void setSource(Model source) {
             this.sourceModel = source;
             this.source = null;
@@ -433,6 +436,7 @@ public void setSource(Model source) {
             }
         }
 
+        @Override
         public String getSource() {
             if (source == null && sourceModel != null) {
                 source = ModelProblemUtils.toPath(sourceModel);
@@ -444,10 +448,12 @@ private String getModelId() {
             return ModelProblemUtils.toId(sourceModel);
         }
 
+        @Override
         public void setRootModel(Model rootModel) {
             this.rootModel = rootModel;
         }
 
+        @Override
         public Model getRootModel() {
             return rootModel;
         }
@@ -489,6 +495,7 @@ public void add(
             add(problem);
         }
 
+        @Override
         public ModelBuilderException newModelBuilderException() {
             return new ModelBuilderException(result);
         }
@@ -2072,6 +2079,7 @@ static class InliningTransformer implements XmlReaderRequest.Transformer {
                 "checksumPolicy",
                 "updatePolicy");
 
+        @Override
         public String transform(String input, String context) {
             return CONTEXTS.contains(context) ? input.intern() : input;
         }
diff --git a/impl/maven-impl/src/main/java/org/apache/maven/impl/model/DefaultModelBuilderResult.java b/impl/maven-impl/src/main/java/org/apache/maven/impl/model/DefaultModelBuilderResult.java
index 5f87b7d779..d3b115e598 100644
--- a/impl/maven-impl/src/main/java/org/apache/maven/impl/model/DefaultModelBuilderResult.java
+++ b/impl/maven-impl/src/main/java/org/apache/maven/impl/model/DefaultModelBuilderResult.java
@@ -135,6 +135,7 @@ public List<DefaultModelBuilderResult> getChildren() {
         return children;
     }
 
+    @Override
     public String toString() {
         String modelId;
         if (effectiveModel != null) {
diff --git a/impl/maven-impl/src/main/java/org/apache/maven/impl/model/DefaultModelProblem.java b/impl/maven-impl/src/main/java/org/apache/maven/impl/model/DefaultModelProblem.java
index 4be3249844..803ef7edc5 100644
--- a/impl/maven-impl/src/main/java/org/apache/maven/impl/model/DefaultModelProblem.java
+++ b/impl/maven-impl/src/main/java/org/apache/maven/impl/model/DefaultModelProblem.java
@@ -125,6 +125,7 @@ public int getColumnNumber() {
         return columnNumber;
     }
 
+    @Override
     public String getModelId() {
         return modelId;
     }
@@ -161,6 +162,7 @@ public Severity getSeverity() {
         return severity;
     }
 
+    @Override
     public Version getVersion() {
         return version;
     }
diff --git a/impl/maven-impl/src/main/java/org/apache/maven/impl/model/rootlocator/DefaultRootLocator.java b/impl/maven-impl/src/main/java/org/apache/maven/impl/model/rootlocator/DefaultRootLocator.java
index 712d742998..bd224dcafc 100644
--- a/impl/maven-impl/src/main/java/org/apache/maven/impl/model/rootlocator/DefaultRootLocator.java
+++ b/impl/maven-impl/src/main/java/org/apache/maven/impl/model/rootlocator/DefaultRootLocator.java
@@ -58,6 +58,7 @@ public Path findRoot(@Nonnull Path basedir) {
     }
 
     @Nonnull
+    @Override
     public Path findMandatoryRoot(@Nonnull Path basedir) {
         Path rootDirectory = findRoot(basedir);
         Optional<Path> rdf = getRootDirectoryFallback();
diff --git a/impl/maven-impl/src/main/java/org/apache/maven/impl/resolver/DefaultModelResolver.java b/impl/maven-impl/src/main/java/org/apache/maven/impl/resolver/DefaultModelResolver.java
index 643db1cc0c..03973c981e 100644
--- a/impl/maven-impl/src/main/java/org/apache/maven/impl/resolver/DefaultModelResolver.java
+++ b/impl/maven-impl/src/main/java/org/apache/maven/impl/resolver/DefaultModelResolver.java
@@ -78,6 +78,7 @@ public ModelSource resolveModel(
     }
 
     @Nonnull
+    @Override
     public ModelSource resolveModel(
             @Nonnull Session session,
             @Nullable List<RemoteRepository> repositories,
diff --git a/impl/maven-impl/src/main/java/org/apache/maven/impl/resolver/MavenMetadata.java b/impl/maven-impl/src/main/java/org/apache/maven/impl/resolver/MavenMetadata.java
index 3869830123..a48087c5b0 100644
--- a/impl/maven-impl/src/main/java/org/apache/maven/impl/resolver/MavenMetadata.java
+++ b/impl/maven-impl/src/main/java/org/apache/maven/impl/resolver/MavenMetadata.java
@@ -87,6 +87,7 @@ public Path getPath() {
     }
 
     @Deprecated
+    @Override
     public void merge(File existing, File result) throws RepositoryException {
         merge(existing != null ? existing.toPath() : null, result != null ? result.toPath() : null);
     }
diff --git a/impl/maven-impl/src/main/java/org/apache/maven/impl/resolver/type/DefaultType.java b/impl/maven-impl/src/main/java/org/apache/maven/impl/resolver/type/DefaultType.java
index 86607b7703..52ec4ba87f 100644
--- a/impl/maven-impl/src/main/java/org/apache/maven/impl/resolver/type/DefaultType.java
+++ b/impl/maven-impl/src/main/java/org/apache/maven/impl/resolver/type/DefaultType.java
@@ -103,6 +103,7 @@ public boolean isIncludesDependencies() {
         return this.includesDependencies;
     }
 
+    @Override
     public Set<PathType> getPathTypes() {
         return this.pathTypes;
     }
diff --git a/impl/maven-impl/src/test/java/org/apache/maven/impl/VersionTest.java b/impl/maven-impl/src/test/java/org/apache/maven/impl/VersionTest.java
index 27ad332728..f7b0d22ebc 100644
--- a/impl/maven-impl/src/test/java/org/apache/maven/impl/VersionTest.java
+++ b/impl/maven-impl/src/test/java/org/apache/maven/impl/VersionTest.java
@@ -37,6 +37,7 @@
 public class VersionTest extends AbstractVersionTest {
     private final ModelVersionParser modelVersionParser = new DefaultModelVersionParser(new GenericVersionScheme());
 
+    @Override
     protected Version newVersion(String version) {
         return modelVersionParser.parseVersion(version);
     }
diff --git a/impl/maven-logging/src/main/java/org/apache/maven/slf4j/MavenBaseLogger.java b/impl/maven-logging/src/main/java/org/apache/maven/slf4j/MavenBaseLogger.java
index 11070b834b..b4aba803df 100644
--- a/impl/maven-logging/src/main/java/org/apache/maven/slf4j/MavenBaseLogger.java
+++ b/impl/maven-logging/src/main/java/org/apache/maven/slf4j/MavenBaseLogger.java
@@ -256,26 +256,31 @@ protected boolean isLevelEnabled(int logLevel) {
     }
 
     /** Are {@code trace} messages currently enabled? */
+    @Override
     public boolean isTraceEnabled() {
         return isLevelEnabled(LOG_LEVEL_TRACE);
     }
 
     /** Are {@code debug} messages currently enabled? */
+    @Override
     public boolean isDebugEnabled() {
         return isLevelEnabled(LOG_LEVEL_DEBUG);
     }
 
     /** Are {@code info} messages currently enabled? */
+    @Override
     public boolean isInfoEnabled() {
         return isLevelEnabled(LOG_LEVEL_INFO);
     }
 
     /** Are {@code warn} messages currently enabled? */
+    @Override
     public boolean isWarnEnabled() {
         return isLevelEnabled(LOG_LEVEL_WARN);
     }
 
     /** Are {@code error} messages currently enabled? */
+    @Override
     public boolean isErrorEnabled() {
         return isLevelEnabled(LOG_LEVEL_ERROR);
     }
diff --git a/impl/maven-logging/src/main/java/org/apache/maven/slf4j/MavenServiceProvider.java b/impl/maven-logging/src/main/java/org/apache/maven/slf4j/MavenServiceProvider.java
index af7fe1ca65..6024652c65 100644
--- a/impl/maven-logging/src/main/java/org/apache/maven/slf4j/MavenServiceProvider.java
+++ b/impl/maven-logging/src/main/java/org/apache/maven/slf4j/MavenServiceProvider.java
@@ -45,6 +45,7 @@ protected MavenLoggerFactory loadMavenLoggerFactory() {
         return ServiceLoader.load(MavenLoggerFactory.class).findFirst().orElseGet(MavenLoggerFactory::new);
     }
 
+    @Override
     public ILoggerFactory getLoggerFactory() {
         return loggerFactory;
     }
diff --git a/impl/maven-logging/src/main/java/org/apache/maven/slf4j/MavenSimpleLogger.java b/impl/maven-logging/src/main/java/org/apache/maven/slf4j/MavenSimpleLogger.java
index 9f4e3be251..02767987e2 100644
--- a/impl/maven-logging/src/main/java/org/apache/maven/slf4j/MavenSimpleLogger.java
+++ b/impl/maven-logging/src/main/java/org/apache/maven/slf4j/MavenSimpleLogger.java
@@ -69,6 +69,7 @@ protected String renderLevel(int level) {
         };
     }
 
+    @Override
     protected void write(StringBuilder buf, Throwable t) {
         Consumer<String> sink = logSink;
         if (sink != null) {
diff --git a/impl/maven-testing/src/main/java/org/apache/maven/api/plugin/testing/stubs/PluginStub.java b/impl/maven-testing/src/main/java/org/apache/maven/api/plugin/testing/stubs/PluginStub.java
index fb5bb46038..7692bc775b 100644
--- a/impl/maven-testing/src/main/java/org/apache/maven/api/plugin/testing/stubs/PluginStub.java
+++ b/impl/maven-testing/src/main/java/org/apache/maven/api/plugin/testing/stubs/PluginStub.java
@@ -111,6 +111,7 @@ public void setDependencies(List<Dependency> dependencies) {
         this.dependencies = dependencies;
     }
 
+    @Override
     public Map<String, Dependency> getDependenciesMap() {
         return dependenciesMap;
     }
diff --git a/impl/maven-xml/src/main/java/org/apache/maven/internal/xml/XmlNodeImpl.java b/impl/maven-xml/src/main/java/org/apache/maven/internal/xml/XmlNodeImpl.java
index 41659e1dd9..db0025bc36 100644
--- a/impl/maven-xml/src/main/java/org/apache/maven/internal/xml/XmlNodeImpl.java
+++ b/impl/maven-xml/src/main/java/org/apache/maven/internal/xml/XmlNodeImpl.java
@@ -191,6 +191,7 @@ public String attribute(@Nonnull String name) {
     // ----------------------------------------------------------------------
 
     @Deprecated(since = "4.0.0", forRemoval = true)
+    @Override
     public XmlNode getChild(String name) {
         if (name != null) {
             ListIterator<XmlNode> it = children.listIterator(children.size());
@@ -236,6 +237,7 @@ public int getChildCount() {
      * @return input location
      */
     @Deprecated(since = "4.0.0", forRemoval = true)
+    @Override
     public Object getInputLocation() {
         return location;
     }
diff --git a/impl/maven-xml/src/test/java/org/apache/maven/internal/xml/XmlNodeImplTest.java b/impl/maven-xml/src/test/java/org/apache/maven/internal/xml/XmlNodeImplTest.java
index af2fcd3dba..0321cba8c0 100644
--- a/impl/maven-xml/src/test/java/org/apache/maven/internal/xml/XmlNodeImplTest.java
+++ b/impl/maven-xml/src/test/java/org/apache/maven/internal/xml/XmlNodeImplTest.java
@@ -701,6 +701,7 @@ private static class FixedInputLocationBuilder implements XmlService.InputLocati
             this.location = location;
         }
 
+        @Override
         public Object toInputLocation(XMLStreamReader parser) {
             return location;
         }
diff --git a/its/core-it-suite/src/test/java/org/apache/maven/it/TunnelingProxyServer.java b/its/core-it-suite/src/test/java/org/apache/maven/it/TunnelingProxyServer.java
index 33c394a651..39fff60a1a 100644
--- a/its/core-it-suite/src/test/java/org/apache/maven/it/TunnelingProxyServer.java
+++ b/its/core-it-suite/src/test/java/org/apache/maven/it/TunnelingProxyServer.java
@@ -67,6 +67,7 @@ public void stop() throws IOException {
         }
     }
 
+    @Override
     public void run() {
         try {
             while (true) {
@@ -85,6 +86,7 @@ class ClientHandler extends Thread {
             this.client = client;
         }
 
+        @Override
         public void run() {
             try {
                 PushbackInputStream is = new PushbackInputStream(client.getInputStream());
@@ -167,6 +169,7 @@ static class StreamPumper extends Thread {
             this.os = os;
         }
 
+        @Override
         public void run() {
             try {
                 for (byte[] buffer = new byte[1024 * 8]; ; ) {
diff --git a/its/core-it-suite/src/test/resources/mng-3259/module5/src/test/java/mng/Module5Test.java b/its/core-it-suite/src/test/resources/mng-3259/module5/src/test/java/mng/Module5Test.java
index f09c34ed8d..3b18ff2de8 100644
--- a/its/core-it-suite/src/test/resources/mng-3259/module5/src/test/java/mng/Module5Test.java
+++ b/its/core-it-suite/src/test/resources/mng-3259/module5/src/test/java/mng/Module5Test.java
@@ -23,10 +23,12 @@
 public class Module5Test extends XStreamTestCase {
     private Calendar cal = Calendar.getInstance();
 
+    @Override
     protected Object getObject() {
         return cal;
     }
 
+    @Override
     protected String getXML() {
         return Module3TestUtil.getCalendarAsXML(cal);
     }
diff --git a/its/core-it-suite/src/test/resources/mng-3703/maven-mng3703-plugin/src/main/java/jar/CheckMojo.java b/its/core-it-suite/src/test/resources/mng-3703/maven-mng3703-plugin/src/main/java/jar/CheckMojo.java
index 758081834c..99731941af 100644
--- a/its/core-it-suite/src/test/resources/mng-3703/maven-mng3703-plugin/src/main/java/jar/CheckMojo.java
+++ b/its/core-it-suite/src/test/resources/mng-3703/maven-mng3703-plugin/src/main/java/jar/CheckMojo.java
@@ -42,10 +42,12 @@
  */
 public class CheckMojo extends AbstractCheckMojo {
 
+    @Override
     protected MavenProject getTestProject() {
         return getExecutionProject();
     }
 
+    @Override
     protected String getTestProjectLabel() {
         return "forked project";
     }
diff --git a/its/core-it-suite/src/test/resources/mng-3703/maven-mng3703-plugin/src/main/java/jar/RunMojo.java b/its/core-it-suite/src/test/resources/mng-3703/maven-mng3703-plugin/src/main/java/jar/RunMojo.java
index 8a47483389..d75bcabe3d 100644
--- a/its/core-it-suite/src/test/resources/mng-3703/maven-mng3703-plugin/src/main/java/jar/RunMojo.java
+++ b/its/core-it-suite/src/test/resources/mng-3703/maven-mng3703-plugin/src/main/java/jar/RunMojo.java
@@ -43,6 +43,7 @@
  */
 public class RunMojo extends AbstractCheckMojo {
 
+    @Override
     public void execute() throws MojoExecutionException {
         if (forkHasRun) {
             getLog().info("Not running inside a forked execution; skipping this mojo's execution.");
@@ -52,10 +53,12 @@ public void execute() throws MojoExecutionException {
         super.execute();
     }
 
+    @Override
     protected MavenProject getTestProject() {
         return getMainProject();
     }
 
+    @Override
     protected String getTestProjectLabel() {
         return "main-project";
     }
diff --git a/its/core-it-support/core-it-component/src/main/java/org/apache/maven/coreit/component/DefaultStatefulSingleton.java b/its/core-it-support/core-it-component/src/main/java/org/apache/maven/coreit/component/DefaultStatefulSingleton.java
index cbafdce7cb..21d164e2da 100644
--- a/its/core-it-support/core-it-component/src/main/java/org/apache/maven/coreit/component/DefaultStatefulSingleton.java
+++ b/its/core-it-support/core-it-component/src/main/java/org/apache/maven/coreit/component/DefaultStatefulSingleton.java
@@ -30,14 +30,17 @@ public class DefaultStatefulSingleton implements StatefulSingleton {
 
     private Properties properties = new Properties();
 
+    @Override
     public String getProperty(String key) {
         return properties.getProperty(key);
     }
 
+    @Override
     public void setProperty(String key, String value) {
         properties.setProperty(key, value);
     }
 
+    @Override
     public void saveProperties(File propertiesFile) throws IOException {
         propertiesFile.getParentFile().mkdirs();
 
diff --git a/its/core-it-support/core-it-javaagent/src/main/java/org/apache/maven/coreits/javaagent/mng5669/Premain.java b/its/core-it-support/core-it-javaagent/src/main/java/org/apache/maven/coreits/javaagent/mng5669/Premain.java
index 7f53da774f..0acf3296e3 100644
--- a/its/core-it-support/core-it-javaagent/src/main/java/org/apache/maven/coreits/javaagent/mng5669/Premain.java
+++ b/its/core-it-support/core-it-javaagent/src/main/java/org/apache/maven/coreits/javaagent/mng5669/Premain.java
@@ -39,6 +39,7 @@ public class Premain {
     public static void premain(String agentArgs, Instrumentation inst) {
         inst.addTransformer(new ClassFileTransformer() {
 
+            @Override
             public byte[] transform(
                     ClassLoader loader,
                     String className,
diff --git a/its/core-it-support/core-it-plugins/maven-it-plugin-active-collection/src/main/java/org/apache/maven/plugin/coreit/CheckThreadSafetyMojo.java b/its/core-it-support/core-it-plugins/maven-it-plugin-active-collection/src/main/java/org/apache/maven/plugin/coreit/CheckThreadSafetyMojo.java
index f8f4441bd7..ffe72d0ff0 100644
--- a/its/core-it-support/core-it-plugins/maven-it-plugin-active-collection/src/main/java/org/apache/maven/plugin/coreit/CheckThreadSafetyMojo.java
+++ b/its/core-it-support/core-it-plugins/maven-it-plugin-active-collection/src/main/java/org/apache/maven/plugin/coreit/CheckThreadSafetyMojo.java
@@ -91,6 +91,7 @@ public void execute() throws MojoExecutionException {
             threads[i] = new Thread() {
                 private final ClassLoader tccl = cl;
 
+                @Override
                 public void run() {
                     getLog().info("[MAVEN-CORE-IT-LOG] Thread " + this + " uses " + tccl);
                     Thread.currentThread().setContextClassLoader(tccl);
diff --git a/its/core-it-support/core-it-plugins/maven-it-plugin-artifact/src/main/java/org/apache/maven/plugin/coreit/InstallCustomMojo.java b/its/core-it-support/core-it-plugins/maven-it-plugin-artifact/src/main/java/org/apache/maven/plugin/coreit/InstallCustomMojo.java
index b20ce9d2f8..a2ef3c4e51 100644
--- a/its/core-it-support/core-it-plugins/maven-it-plugin-artifact/src/main/java/org/apache/maven/plugin/coreit/InstallCustomMojo.java
+++ b/its/core-it-support/core-it-plugins/maven-it-plugin-artifact/src/main/java/org/apache/maven/plugin/coreit/InstallCustomMojo.java
@@ -52,6 +52,7 @@ public class InstallCustomMojo extends InstallMojo {
      *
      * @throws MojoExecutionException If any artifact could not be installed.
      */
+    @Override
     public void execute() throws MojoExecutionException {
         try {
             String url = "file://" + localRepoDir.toURL().getPath();
diff --git a/its/core-it-support/core-it-plugins/maven-it-plugin-artifact/src/main/java/org/apache/maven/plugin/coreit/ResolveTransitiveMojo.java b/its/core-it-support/core-it-plugins/maven-it-plugin-artifact/src/main/java/org/apache/maven/plugin/coreit/ResolveTransitiveMojo.java
index 5fa853cd69..7aee4f62f8 100644
--- a/its/core-it-support/core-it-plugins/maven-it-plugin-artifact/src/main/java/org/apache/maven/plugin/coreit/ResolveTransitiveMojo.java
+++ b/its/core-it-support/core-it-plugins/maven-it-plugin-artifact/src/main/java/org/apache/maven/plugin/coreit/ResolveTransitiveMojo.java
@@ -142,6 +142,7 @@ class ResolverThread extends Thread {
 
         Exception error;
 
+        @Override
         public void run() {
             if (dependencies != null) {
                 try {
diff --git a/its/core-it-support/core-it-plugins/maven-it-plugin-configuration/src/main/java/org/apache/maven/plugin/coreit/Bean.java b/its/core-it-support/core-it-plugins/maven-it-plugin-configuration/src/main/java/org/apache/maven/plugin/coreit/Bean.java
index df154e1c0a..e469e092ed 100644
--- a/its/core-it-support/core-it-plugins/maven-it-plugin-configuration/src/main/java/org/apache/maven/plugin/coreit/Bean.java
+++ b/its/core-it-support/core-it-plugins/maven-it-plugin-configuration/src/main/java/org/apache/maven/plugin/coreit/Bean.java
@@ -42,6 +42,7 @@ public void setSetterParam(String value) {
         setterCalled = true;
     }
 
+    @Override
     public String toString() {
         return getClass().getName() + "[fieldParam=" + fieldParam + ", setterParam=" + setterParam + ", setterCalled="
                 + setterCalled + "]";
diff --git a/its/core-it-support/core-it-plugins/maven-it-plugin-expression/src/test/java/org/apache/maven/plugin/coreit/PropertyUtilTest.java b/its/core-it-support/core-it-plugins/maven-it-plugin-expression/src/test/java/org/apache/maven/plugin/coreit/PropertyUtilTest.java
index d543588823..2767058a3f 100644
--- a/its/core-it-support/core-it-plugins/maven-it-plugin-expression/src/test/java/org/apache/maven/plugin/coreit/PropertyUtilTest.java
+++ b/its/core-it-support/core-it-plugins/maven-it-plugin-expression/src/test/java/org/apache/maven/plugin/coreit/PropertyUtilTest.java
@@ -119,6 +119,7 @@ public boolean isEnabled() {
             return false;
         }
 
+        @Override
         public String toString() {
             return "excluded";
         }
diff --git a/its/core-it-support/core-it-plugins/maven-it-plugin-no-default-comp/src/main/java/org/apache/maven/plugin/coreit/ConcreteTestComponent.java b/its/core-it-support/core-it-plugins/maven-it-plugin-no-default-comp/src/main/java/org/apache/maven/plugin/coreit/ConcreteTestComponent.java
index c8894aafdc..0427247420 100644
--- a/its/core-it-support/core-it-plugins/maven-it-plugin-no-default-comp/src/main/java/org/apache/maven/plugin/coreit/ConcreteTestComponent.java
+++ b/its/core-it-support/core-it-plugins/maven-it-plugin-no-default-comp/src/main/java/org/apache/maven/plugin/coreit/ConcreteTestComponent.java
@@ -28,6 +28,7 @@
 @Component(role = TestComponent.class, hint = "concrete")
 public class ConcreteTestComponent implements TestComponent {
 
+    @Override
     public String getId() {
         return "concrete";
     }
diff --git a/its/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/DefaultFakeComponent.java b/its/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/DefaultFakeComponent.java
index 49a1803c52..ac17a14dc0 100644
--- a/its/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/DefaultFakeComponent.java
+++ b/its/core-it-support/core-it-plugins/maven-it-plugin-plexus-lifecycle/src/main/java/org/apache/maven/its/plugins/plexuslifecycle/DefaultFakeComponent.java
@@ -45,6 +45,7 @@ public void dispose() {
         logger.info("DefaultFakeComponent :: dispose");
     }
 
+    @Override
     public void doNothing() {
         logger.info("doNothing DefaultFakeComponent");
     }
diff --git a/its/core-it-support/core-it-plugins/maven-it-plugin-plexus-utils-new/src/main/java/org/codehaus/plexus/util/xml/pull/MXSerializer.java b/its/core-it-support/core-it-plugins/maven-it-plugin-plexus-utils-new/src/main/java/org/codehaus/plexus/util/xml/pull/MXSerializer.java
index 2759ab9b25..53b67206f0 100644
--- a/its/core-it-support/core-it-plugins/maven-it-plugin-plexus-utils-new/src/main/java/org/codehaus/plexus/util/xml/pull/MXSerializer.java
+++ b/its/core-it-support/core-it-plugins/maven-it-plugin-plexus-utils-new/src/main/java/org/codehaus/plexus/util/xml/pull/MXSerializer.java
@@ -28,104 +28,129 @@
 public class MXSerializer implements XmlSerializer {
     private Writer output;
 
+    @Override
     public void setOutput(Writer writer) {
         output = writer;
     }
 
+    @Override
     public XmlSerializer attribute(String namespace, String name, String value) {
         return null;
     }
 
+    @Override
     public void cdsect(String text) {
         // ignore
     }
 
+    @Override
     public void comment(String text) {
         // ignore
     }
 
+    @Override
     public void docdecl(String text) {
         // ignore
     }
 
+    @Override
     public void endDocument() {
         // ignore
     }
 
+    @Override
     public XmlSerializer endTag(String namespace, String name) {
         return null;
     }
 
+    @Override
     public void entityRef(String text) {
         // ignore
     }
 
+    @Override
     public void flush() {
         // ignore
     }
 
+    @Override
     public int getDepth() {
         return 0;
     }
 
+    @Override
     public boolean getFeature(String name) {
         return false;
     }
 
+    @Override
     public String getName() {
         return null;
     }
 
+    @Override
     public String getNamespace() {
         return null;
     }
 
+    @Override
     public String getPrefix(String namespace, boolean generatePrefix) {
         return null;
     }
 
+    @Override
     public Object getProperty(String name) {
         return null;
     }
 
+    @Override
     public void ignorableWhitespace(String text) {
         // ignore
     }
 
+    @Override
     public void processingInstruction(String text) {
         // ignore
     }
 
+    @Override
     public void setFeature(String name, boolean state) {
         // ignore
     }
 
+    @Override
     public void setOutput(OutputStream os, String encoding) {
         // ignore
     }
 
+    @Override
     public void setPrefix(String prefix, String namespace) {
         // ignore
     }
 
+    @Override
     public void setProperty(String name, Object value) {
         // ignore
     }
 
+    @Override
     public void startDocument(String encoding, Boolean standalone) {
         // ignore
     }
 
+    @Override
     public XmlSerializer startTag(String namespace, String name) throws IOException {
         output.write(name);
 
         return this;
     }
 
+    @Override
     public XmlSerializer text(String text) {
         return null;
     }
 
+    @Override
     public XmlSerializer text(char[] buf, int start, int len) {
         return null;
     }
diff --git a/its/core-it-support/core-it-plugins/maven-it-plugin-plugin-dependency/src/main/java/org/apache/maven/plugin/coreit/DerivedItMojo.java b/its/core-it-support/core-it-plugins/maven-it-plugin-plugin-dependency/src/main/java/org/apache/maven/plugin/coreit/DerivedItMojo.java
index f0ab90b16b..7687977d46 100644
--- a/its/core-it-support/core-it-plugins/maven-it-plugin-plugin-dependency/src/main/java/org/apache/maven/plugin/coreit/DerivedItMojo.java
+++ b/its/core-it-support/core-it-plugins/maven-it-plugin-plugin-dependency/src/main/java/org/apache/maven/plugin/coreit/DerivedItMojo.java
@@ -38,6 +38,7 @@ public class DerivedItMojo extends EvalMojo {
     @Parameter
     private File file;
 
+    @Override
     public void execute() throws MojoFailureException, MojoExecutionException {
         if (file != null) {
             super.setOutputFile(file);
diff --git a/its/core-it-support/core-it-plugins/maven-it-plugin-singleton-component/src/main/java/org/apache/maven/plugin/coreit/DefaultComponent.java b/its/core-it-support/core-it-plugins/maven-it-plugin-singleton-component/src/main/java/org/apache/maven/plugin/coreit/DefaultComponent.java
index 833c7a1c62..f996a88cff 100644
--- a/its/core-it-support/core-it-plugins/maven-it-plugin-singleton-component/src/main/java/org/apache/maven/plugin/coreit/DefaultComponent.java
+++ b/its/core-it-support/core-it-plugins/maven-it-plugin-singleton-component/src/main/java/org/apache/maven/plugin/coreit/DefaultComponent.java
@@ -34,6 +34,7 @@ public DefaultComponent() {
         id = Integer.toString(System.identityHashCode(this));
     }
 
+    @Override
     public String getId() {
         return id;
     }
diff --git a/its/core-it-support/core-it-plugins/maven-it-plugin-site/src/main/java/org/apache/maven/plugin/coreit/GenerateMojo.java b/its/core-it-support/core-it-plugins/maven-it-plugin-site/src/main/java/org/apache/maven/plugin/coreit/GenerateMojo.java
index 009a0f29c4..345e1abd5a 100644
--- a/its/core-it-support/core-it-plugins/maven-it-plugin-site/src/main/java/org/apache/maven/plugin/coreit/GenerateMojo.java
+++ b/its/core-it-support/core-it-plugins/maven-it-plugin-site/src/main/java/org/apache/maven/plugin/coreit/GenerateMojo.java
@@ -80,6 +80,7 @@ public void execute() throws MojoExecutionException, MojoFailureException {
 
         InvocationHandler handler = new InvocationHandler() {
 
+            @Override
             public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
                 return null;
             }
diff --git a/its/core-it-support/maven-it-helper/src/main/java/org/apache/maven/it/Verifier.java b/its/core-it-support/maven-it-helper/src/main/java/org/apache/maven/it/Verifier.java
index 0b0dd2a1ed..531cad5e11 100644
--- a/its/core-it-support/maven-it-helper/src/main/java/org/apache/maven/it/Verifier.java
+++ b/its/core-it-support/maven-it-helper/src/main/java/org/apache/maven/it/Verifier.java
@@ -592,6 +592,7 @@ private List<String> replaceArtifacts(String line, boolean hasCommand) {
     private static void addMetadataToList(File dir, boolean hasCommand, List<String> l, String command) {
         if (dir.exists() && dir.isDirectory()) {
             String[] files = dir.list(new FilenameFilter() {
+                @Override
                 public boolean accept(File dir, String name) {
                     return name.startsWith("maven-metadata") && name.endsWith(".xml");
                 }
diff --git a/src/mdo/java/InputLocation.java b/src/mdo/java/InputLocation.java
index 2685b813ba..3345a1d1d0 100644
--- a/src/mdo/java/InputLocation.java
+++ b/src/mdo/java/InputLocation.java
@@ -75,6 +75,7 @@ public InputSource getSource() {
         return source;
     }
 
+    @Override
     public InputLocation getLocation(Object key) {
         return locations != null ? locations.get(key) : null;
     }