Skip to content

Commit a4fb59d

Browse files
author
Vincent Potucek
committed
[POC-FIX-PMD] maven-pmd-plugin: reactivate PMD
1 parent ffd30a3 commit a4fb59d

File tree

3 files changed

+191
-1
lines changed

3 files changed

+191
-1
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,4 +16,5 @@
1616
.factorypath
1717
.vscode/
1818
repo/
19-
/*.svg
19+
/*.svg
20+
/**/.cache

.pmd/exclude.properties

Lines changed: 156 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,156 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the
5+
# "License"); you may not use this file except in compliance
6+
# with the License. You may obtain a copy of the License at
7+
#
8+
# http://www.apache.org/licenses/LICENSE-2.0
9+
#
10+
# Unless required by applicable law or agreed to in writing,
11+
# software distributed under the License is distributed on an
12+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
13+
# KIND, either express or implied. See the License for the
14+
# specific language governing permissions and limitations
15+
# under the License.
16+
org.apache.maven.ReactorReader=UselessParentheses
17+
org.apache.maven.api.DependencyScope=UnnecessaryFullyQualifiedName
18+
org.apache.maven.api.JavaPathType=UnnecessaryModifier,UnnecessaryFullyQualifiedName
19+
org.apache.maven.api.MonotonicClock=UnnecessaryFullyQualifiedName
20+
org.apache.maven.api.plugin.testing.Foo=UnnecessaryFullyQualifiedName
21+
org.apache.maven.api.plugin.testing.MojoExtension=CollapsibleIfStatements
22+
org.apache.maven.api.plugin.testing.stubs.SessionMock=TooManyStaticImports
23+
org.apache.maven.api.services.ArtifactCoordinatesFactoryRequest=UnnecessaryFullyQualifiedName
24+
org.apache.maven.api.services.ArtifactFactoryRequest=UnnecessaryFullyQualifiedName
25+
org.apache.maven.api.services.DependencyCoordinatesFactoryRequest=UnnecessaryFullyQualifiedName
26+
org.apache.maven.artifact.ArtifactUtils=UnnecessaryFullyQualifiedName
27+
org.apache.maven.artifact.DefaultArtifact=UselessParentheses
28+
org.apache.maven.artifact.deployer.DefaultArtifactDeployer=EmptyControlStatement
29+
org.apache.maven.artifact.handler.manager.DefaultArtifactHandlerManager=CollapsibleIfStatements
30+
org.apache.maven.artifact.handler.manager.LegacyArtifactHandlerManager=CollapsibleIfStatements
31+
org.apache.maven.artifact.installer.DefaultArtifactInstaller=EmptyControlStatement
32+
org.apache.maven.artifact.metadata.AbstractArtifactMetadata=UnnecessaryFullyQualifiedName
33+
org.apache.maven.artifact.repository.ArtifactRepositoryPolicy=UnnecessaryFullyQualifiedName
34+
org.apache.maven.artifact.repository.DefaultArtifactRepository=UnusedFormalParameter
35+
org.apache.maven.artifact.repository.metadata.AbstractRepositoryMetadata=UnnecessaryFullyQualifiedName
36+
org.apache.maven.artifact.repository.metadata.DefaultRepositoryMetadataManager=CollapsibleIfStatements
37+
org.apache.maven.artifact.repository.metadata.io.xpp3.MetadataXpp3Writer=UnnecessaryFullyQualifiedName
38+
org.apache.maven.artifact.resolver.DaemonThreadCreator=AvoidThreadGroup
39+
org.apache.maven.artifact.resolver.filter.ExclusionArtifactFilter=UnusedPrivateField
40+
org.apache.maven.artifact.versioning.ComparableVersion=UselessParentheses
41+
org.apache.maven.artifact.versioning.ListItem=UselessParentheses
42+
org.apache.maven.artifact.versioning.VersionRange=CollapsibleIfStatements
43+
org.apache.maven.bridge.MavenRepositorySystem=UnnecessaryFullyQualifiedName,AvoidUsingHardCodedIP,UselessParentheses
44+
org.apache.maven.cli.CLIReportingUtils=UselessParentheses
45+
org.apache.maven.cli.MavenCli=UnnecessaryFullyQualifiedName,UselessParentheses
46+
org.apache.maven.cli.configuration.SettingsXmlConfigurationProcessor=UnusedFormalParameter
47+
org.apache.maven.cli.props.MavenProperties=CollapsibleIfStatements
48+
org.apache.maven.cli.props.MavenPropertiesLoader=UselessParentheses
49+
org.apache.maven.cli.transfer.AbstractMavenTransferListener=UselessParentheses
50+
org.apache.maven.cli.transfer.ConsoleMavenTransferListener=UnusedFormalParameter
51+
org.apache.maven.cli.transfer.Slf4jMavenTransferListener=UselessParentheses
52+
org.apache.maven.cling.executor.embedded.Context=UnusedPrivateField
53+
org.apache.maven.cling.invoker.BaseParser=TooManyStaticImports
54+
org.apache.maven.cling.invoker.LookupInvoker=SimplifiedTernary
55+
org.apache.maven.cling.invoker.mvnenc.CommonsCliEncryptOptions=UnnecessaryFullyQualifiedName
56+
org.apache.maven.cling.invoker.mvnsh.CommonsCliShellOptions=UnnecessaryFullyQualifiedName
57+
org.apache.maven.cling.invoker.mvnsh.builtin.BuiltinShellCommandRegistry=UnusedFormalParameter
58+
org.apache.maven.cling.logging.Slf4jLoggerManager=UselessParentheses
59+
org.apache.maven.cling.logging.impl.UnsupportedSlf4jBindingConfiguration=UnusedFormalParameter
60+
org.apache.maven.cling.props.MavenProperties=CollapsibleIfStatements
61+
org.apache.maven.cling.props.MavenPropertiesLoader=UselessParentheses
62+
org.apache.maven.cling.transfer.AbstractMavenTransferListener=UselessParentheses
63+
org.apache.maven.cling.transfer.ConsoleMavenTransferListener=UnusedFormalParameter
64+
org.apache.maven.cling.transfer.Slf4jMavenTransferListener=UselessParentheses
65+
org.apache.maven.cling.utils.CLIReportingUtils=UnusedPrivateField,UselessParentheses
66+
org.apache.maven.configuration.BasedirBeanConfigurationPathTranslator=EmptyControlStatement
67+
org.apache.maven.di.impl.Binding=UnnecessaryFullyQualifiedName
68+
org.apache.maven.di.impl.ReflectionUtils=UnnecessaryFullyQualifiedName
69+
org.apache.maven.di.impl.SingletonScope=UnnecessaryFullyQualifiedName
70+
org.apache.maven.di.impl.Types=JumbledIncrementer,UnnecessaryFullyQualifiedName
71+
org.apache.maven.exception.DefaultExceptionHandler=UselessParentheses
72+
org.apache.maven.execution.MavenSession=UnusedFormalParameter
73+
org.apache.maven.graph.DefaultGraphBuilder=UselessParentheses
74+
org.apache.maven.impl.DefaultNode=UnnecessaryFullyQualifiedName,UselessParentheses
75+
org.apache.maven.impl.DefaultPluginXmlFactory=UnusedLocalVariable
76+
org.apache.maven.impl.DefaultRepositoryFactory=UnnecessaryFullyQualifiedName
77+
org.apache.maven.impl.DefaultSettingsBuilder=UnusedFormalParameter
78+
org.apache.maven.impl.DefaultToolchainsBuilder=UnusedFormalParameter
79+
org.apache.maven.impl.DefaultTransportProvider=UnnecessaryFullyQualifiedName
80+
org.apache.maven.impl.InternalSession=UnnecessaryFullyQualifiedName
81+
org.apache.maven.impl.PathSelector=CollapsibleIfStatements
82+
org.apache.maven.impl.PropertiesAsMap=UnnecessaryFullyQualifiedName
83+
org.apache.maven.impl.SettingsUtilsV4=UnnecessaryFullyQualifiedName
84+
org.apache.maven.impl.model.DefaultInheritanceAssembler=UselessParentheses
85+
org.apache.maven.impl.model.DefaultModelBuilder=UnnecessaryFullyQualifiedName
86+
org.apache.maven.impl.model.DefaultModelInterpolator=EmptyControlStatement
87+
org.apache.maven.impl.model.DefaultModelValidator=UnnecessaryFullyQualifiedName
88+
org.apache.maven.impl.model.MavenModelMerger=UselessOverridingMethod,CollapsibleIfStatements
89+
org.apache.maven.impl.model.ModelBuilderSessionState=CollapsibleIfStatements
90+
org.apache.maven.impl.resolver.LocalSnapshotMetadataGenerator=UnusedFormalParameter
91+
org.apache.maven.impl.resolver.scopes.Maven3ScopeManagerConfiguration=TooManyStaticImports,UnnecessaryFullyQualifiedName
92+
org.apache.maven.impl.resolver.scopes.Maven4ScopeManagerConfiguration=TooManyStaticImports,UnnecessaryFullyQualifiedName
93+
org.apache.maven.internal.aether.DefaultRepositorySystemSessionFactory=EmptyControlStatement
94+
org.apache.maven.internal.impl.CleanLifecycle=UnnecessaryFullyQualifiedName
95+
org.apache.maven.internal.impl.DefaultLifecycle=UnnecessaryFullyQualifiedName
96+
org.apache.maven.internal.impl.DefaultLifecycleRegistry=UnnecessaryFullyQualifiedName,TooManyStaticImports
97+
org.apache.maven.internal.impl.DefaultTypeRegistry=CollapsibleIfStatements
98+
org.apache.maven.internal.impl.SiteLifecycle=UnnecessaryFullyQualifiedName
99+
org.apache.maven.internal.transformation.impl.DefaultConsumerPomArtifactTransformer=UnusedPrivateMethod
100+
org.apache.maven.internal.transformation.impl.DefaultConsumerPomBuilder=UnusedFormalParameter
101+
org.apache.maven.internal.xml.DefaultXmlService=UnusedPrivateMethod
102+
org.apache.maven.jline.DefaultPrompter=UselessParentheses
103+
org.apache.maven.jline.MessageUtils=UnnecessaryFullyQualifiedName
104+
org.apache.maven.lifecycle.DefaultLifecycles=UnusedFormalParameter
105+
org.apache.maven.lifecycle.LifecycleExecutionException=UnusedFormalParameter
106+
org.apache.maven.lifecycle.internal.DefaultLifecycleExecutionPlanCalculator=UselessParentheses
107+
org.apache.maven.lifecycle.internal.DefaultLifecycleTaskSegmentCalculator=UselessParentheses
108+
org.apache.maven.lifecycle.internal.MojoExecutor=UnusedLocalVariable
109+
org.apache.maven.lifecycle.internal.builder.BuilderCommon=EmptyControlStatement
110+
org.apache.maven.lifecycle.internal.concurrent.BuildContext=UnusedLocalVariable,CollapsibleIfStatements,EmptyControlStatement
111+
org.apache.maven.lifecycle.internal.concurrent.BuildPlanExecutor=TooManyStaticImports,UselessParentheses
112+
org.apache.maven.lifecycle.internal.concurrent.ConcurrentLifecycleStarter=UselessParentheses
113+
org.apache.maven.logging.LoggingExecutionListener=UselessParentheses
114+
org.apache.maven.model.building.DefaultModelBuilder=UnnecessaryFullyQualifiedName
115+
org.apache.maven.model.inheritance.DefaultInheritanceAssembler=UselessParentheses
116+
org.apache.maven.model.io.xpp3.MavenXpp3ReaderEx=UselessOverridingMethod
117+
org.apache.maven.model.io.xpp3.MavenXpp3WriterEx=UselessOverridingMethod
118+
org.apache.maven.model.merge.MavenModelMerger=CollapsibleIfStatements
119+
org.apache.maven.model.merge.ModelMerger=CollapsibleIfStatements
120+
org.apache.maven.model.validation.DefaultModelValidator=UnusedFormalParameter
121+
org.apache.maven.plugin.CycleDetectedInPluginGraphException=UnusedFormalParameter
122+
org.apache.maven.plugin.PluginConfigurationException=UnusedPrivateField
123+
org.apache.maven.plugin.PluginParameterException=UselessParentheses
124+
org.apache.maven.plugin.PluginParameterExpressionEvaluator=UselessParentheses,EmptyControlStatement
125+
org.apache.maven.plugin.PluginParameterExpressionEvaluatorV4=UselessParentheses,CollapsibleIfStatements,EmptyControlStatement
126+
org.apache.maven.plugin.internal.DefaultLegacySupport=UnnecessaryFullyQualifiedName
127+
org.apache.maven.plugin.prefix.internal.DefaultPluginPrefixResolver=UselessParentheses
128+
org.apache.maven.project.BuildSession=UselessParentheses
129+
org.apache.maven.project.DefaultProjectBuilder=UnusedFormalParameter
130+
org.apache.maven.project.MavenProject=UselessParentheses,UnusedFormalParameter,CollapsibleIfStatements
131+
org.apache.maven.project.ProjectSorter=UselessParentheses
132+
org.apache.maven.project.collector.DefaultProjectsSelector=UselessParentheses
133+
org.apache.maven.project.interpolation.RegexBasedModelInterpolator=UnusedFormalParameter
134+
org.apache.maven.project.path.DefaultPathTranslator=CollapsibleIfStatements
135+
org.apache.maven.repository.DefaultMirrorSelector=AvoidUsingHardCodedIP,UselessParentheses
136+
org.apache.maven.repository.internal.DefaultModelResolver=UnnecessaryFullyQualifiedName
137+
org.apache.maven.repository.internal.LocalSnapshotMetadataGenerator=UnusedFormalParameter
138+
org.apache.maven.repository.internal.scopes.Maven3ScopeManagerConfiguration=TooManyStaticImports,UnnecessaryFullyQualifiedName
139+
org.apache.maven.repository.internal.scopes.Maven4ScopeManagerConfiguration=TooManyStaticImports,UnnecessaryFullyQualifiedName
140+
org.apache.maven.repository.legacy.DefaultUpdateCheckManager=UnusedLocalVariable
141+
org.apache.maven.repository.legacy.DefaultWagonManager=UnusedFormalParameter
142+
org.apache.maven.repository.legacy.LegacyRepositorySystem=UnnecessaryFullyQualifiedName
143+
org.apache.maven.repository.legacy.resolver.DefaultLegacyArtifactCollector=CollapsibleIfStatements
144+
org.apache.maven.repository.legacy.resolver.transform.SnapshotTransformation=UselessParentheses
145+
org.apache.maven.repository.metadata.ArtifactMetadata=UnusedFormalParameter
146+
org.apache.maven.repository.metadata.DefaultGraphConflictResolver=UnusedFormalParameter
147+
org.apache.maven.repository.metadata.MetadataGraph=UnusedFormalParameter
148+
org.apache.maven.repository.metadata.MetadataGraphEdge=OverrideBothEqualsAndHashcode,UselessParentheses
149+
org.apache.maven.settings.DefaultMavenSettingsBuilder=UnnecessaryFullyQualifiedName
150+
org.apache.maven.settings.building.DefaultSettingsBuilder=UnusedFormalParameter
151+
org.apache.maven.slf4j.DefaultLogLevelRecorder=CollapsibleIfStatements,AvoidBranchingStatementAsLastInLoop
152+
org.apache.maven.slf4j.MavenBaseLogger=UselessParentheses
153+
org.apache.maven.slf4j.SimpleLoggerConfiguration=UselessParentheses
154+
org.apache.maven.toolchain.DefaultToolchainManagerV3=UnnecessaryFullyQualifiedName
155+
org.apache.maven.toolchain.building.DefaultToolchainsBuilder=UnusedFormalParameter
156+
org.apache.maven.toolchain.java.DefaultJavaToolChain=UselessOverridingMethod

pom.xml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -799,17 +799,36 @@ under the License.</licenseText>
799799
<plugin>
800800
<groupId>org.apache.maven.plugins</groupId>
801801
<artifactId>maven-pmd-plugin</artifactId>
802+
<configuration>
803+
<analysisCache>true</analysisCache>
804+
<excludeFromFailureFile>.pmd/exclude.properties</excludeFromFailureFile>
805+
<printFailingErrors>true</printFailingErrors>
806+
</configuration>
802807
<dependencies>
803808
<dependency>
804809
<groupId>net.sourceforge.pmd</groupId>
805810
<artifactId>pmd-core</artifactId>
806811
<version>7.12.0</version>
807812
</dependency>
808813
</dependencies>
814+
<executions>
815+
<execution>
816+
<id>maven-pmd-plugin</id>
817+
<goals>
818+
<goal>check</goal>
819+
</goals>
820+
<phase>verify</phase>
821+
</execution>
822+
</executions>
809823
</plugin>
810824
</plugins>
811825
</pluginManagement>
812826
<plugins>
827+
<!-- why profile not working? -->
828+
<plugin>
829+
<groupId>org.apache.maven.plugins</groupId>
830+
<artifactId>maven-pmd-plugin</artifactId>
831+
</plugin>
813832
<plugin>
814833
<groupId>io.github.olamy.maven.plugins</groupId>
815834
<artifactId>jacoco-aggregator-maven-plugin</artifactId>
@@ -1170,5 +1189,19 @@ under the License.</licenseText>
11701189
</plugins>
11711190
</build>
11721191
</profile>
1192+
<profile>
1193+
<id>pmd</id>
1194+
<activation>
1195+
<activeByDefault>true</activeByDefault>
1196+
</activation>
1197+
<build>
1198+
<plugins>
1199+
<plugin>
1200+
<groupId>org.apache.maven.plugins</groupId>
1201+
<artifactId>maven-pmd-plugin</artifactId>
1202+
</plugin>
1203+
</plugins>
1204+
</build>
1205+
</profile>
11731206
</profiles>
11741207
</project>

0 commit comments

Comments
 (0)