yegor256 / qulice

Quality Police for Java projects: aggregator of Checkstyle and PMD
https://www.qulice.com
Other
301 stars 111 forks source link

duplicate finder does not work as expected #1077

Open victornoel opened 4 years ago

victornoel commented 4 years ago

When running qulice 0.18.19 with junit-vintage-engine 5.6.2 dependency, I get the following error (I enabled debug to show what's happening):

[DEBUG] Configuring mojo com.ning.maven.plugins:maven-duplicate-finder-plugin:1.0.7:check from plugin realm ClassRealm[plugin>com.ning.maven.plugins:maven-duplicate-finder-plugin:1.0.7, parent: ClassRealm[plugin>com.qulice:qulice-maven-plugin:0.18.19, parent: sun.misc.Launcher$AppClassLoader@7852e922]]
[DEBUG] Configuring mojo 'com.ning.maven.plugins:maven-duplicate-finder-plugin:1.0.7:check' with basic configurator -->
[DEBUG]   (f) checkTestClasspath = false
[DEBUG]   (f) ignoredResources = [module-info.class, META-INF/.*]
[DEBUG]   (f) failBuildInCaseOfConflict = true
[DEBUG]   (s) ignoredDependencies = []
[DEBUG]   (f) checkCompileClasspath = true
[DEBUG]   (f) checkRuntimeClasspath = true
[DEBUG]   (f) failBuildInCaseOfDifferentContentConflict = false
[DEBUG]   (f) failBuildInCaseOfEqualContentConflict = false
[DEBUG]   (f) printEqualFiles = false
[DEBUG]   (f) project = MavenProject: org.cactoos:cactoos:1.0-SNAPSHOT @ /home/victor/code/eclipse/eo/cactoos/pom.xml
[DEBUG]   (f) skip = false
[DEBUG]   (f) useDefaultResourceIgnoreList = true
[DEBUG] -- end configuration --
[INFO] Calling com.ning.maven.plugins:maven-duplicate-finder-plugin:1.0.7:check...
[INFO] Checking compile classpath
[DEBUG] Found different SHA256 hashs for elements module-info.class in file /home/victor/.m2/repository/org/apiguardian/apiguardian-api/1.1.0/apiguardian-api-1.1.0.jar and /home/victor/.m2/repository/org/opentest4j/opentest4j/1.2.0/opentest4j-1.2.0.jar
[WARNING] Found duplicate and different classes in [org.apiguardian:apiguardian-api:1.1.0,org.junit.platform:junit-platform-commons:1.6.2,org.junit.platform:junit-platform-engine:1.6.2,org.junit.vintage:junit-vintage-engine:5.6.2,org.opentest4j:opentest4j:1.2.0] :
[WARNING]   module-info

As you can see, even though module-info.class is in ignoredResrouces, it's not ignored, most certainly because it's not considered a resource but a class?

Note that in later version of duplicate-finder, the ignoredResources property was deprecated... I think it would do good to bump the version of deuplicate finder too.

0crat commented 4 years ago

@krzyk/z please, pay attention to this issue