1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.plugin.internal;
20
21 import javax.inject.Inject;
22 import javax.inject.Named;
23 import javax.inject.Singleton;
24
25 import org.apache.maven.execution.MavenSession;
26 import org.apache.maven.plugin.PluginValidationManager;
27 import org.apache.maven.plugin.descriptor.MojoDescriptor;
28
29
30
31
32
33
34 @Singleton
35 @Named
36 class PlexusContainerDefaultDependenciesValidator extends AbstractMavenPluginDependenciesValidator {
37
38 @Inject
39 PlexusContainerDefaultDependenciesValidator(PluginValidationManager pluginValidationManager) {
40 super(pluginValidationManager);
41 }
42
43 protected void doValidate(MavenSession mavenSession, MojoDescriptor mojoDescriptor) {
44 boolean pcdPresent = mojoDescriptor.getPluginDescriptor().getDependencies().stream()
45 .filter(d -> "org.codehaus.plexus".equals(d.getGroupId()))
46 .anyMatch(d -> "plexus-container-default".equals(d.getArtifactId()));
47
48 if (pcdPresent) {
49 pluginValidationManager.reportPluginValidationIssue(
50 mavenSession, mojoDescriptor, "Plugin depends on plexus-container-default, which is EOL");
51 }
52 }
53 }