How has annotation processors changed in recent Java versions?

Annotation processors in Java have evolved significantly in recent versions, particularly with the introduction of the Java Platform Module System (JPMS) and the enhancements in the Processing API. These changes have improved the way developers utilize annotations, streamline code generation, and better integrate with modern build systems like Gradle and Maven.
Java, Annotation Processors, JPMS, Processing API, Code Generation, Java 9, Java 11, Java 17
public interface MyAnnotationProcessor extends AbstractProcessor {
        @Override
        public boolean process(Set<TypeElement> annotations, RoundEnvironment roundEnv) {
            // Processing logic
            return true;
        }
    }

Java Annotation Processors JPMS Processing API Code Generation Java 9 Java 11 Java 17