I found the answer with a little help from Google > > Type Resolution: PMD uses tools like ASM to read bytecode and build a > representation of your code, enabling it to resolve names and types, > including references to external dependencies or even the Java API itself. > This means that while PMD directly analyzes source code, it needs access to > compiled code to understand the full context and accurately analyze the > relationships between classes, methods, and variables.
On Tue, Jun 24, 2025 at 2:48 PM Dan S <dsti...@gmail.com> wrote: > I am trying to understand why for contrib-check profile we have the > Checkstyle plugin run at the Maven validate phase while for the PMD plugin > we have it run at the Maven compile phase?. Both Checkstyle and PMD are > static analysis checks and should not need any compilation to run their > checks. So both should be run in the validate phase. >