When generating a site with the pmd report enabled and using "aggregate=true", then more PMD violations are found than it should be.
The reason is probably a wrong configured auxclasspath for PMD: In aggregate mode, PMD is executed once for all modules. The classpath needs to include all dependencies of all modules, in oder for the typeresolution feature to work. Currently, only the compile classpath of the parent module is used.
Relevant code parts:
- Determining the auxclasspath: https://github.com/apache/maven-pmd-plugin/blob/09f7b9a83818b5c93d8731c0a7d263128d06c6e4/src/main/java/org/apache/maven/plugins/pmd/PmdReport.java#L665-L678
- Determining the source folders: https://github.com/apache/maven-pmd-plugin/blob/09f7b9a83818b5c93d8731c0a7d263128d06c6e4/src/main/java/org/apache/maven/plugins/pmd/AbstractPmdReport.java#L362-L391