Description
This issue came up in dev-aspectj/aspectj-maven-plugin#108, but it is not a problem concerning the Maven plugin. Instead, it seems to be related to annotation processing (APT) support for AJC:
There is an annotation processor on the classpath, namely com.querydsl:querydsl-apt:5.0.0-jakarta
. It contains a file META-INF/services/javax.annotation.processing.Processor with the following content:
com.querydsl.apt.jpa.JPAAnnotationProcessor
That annotation processor handles the @jakarta.persistence.MappedSuperclass
annotations found on two classes in the sample repository.
While Javac (used by Maven Compiler Plugin) can correctly generate code, it seems as if the annotation processor throws off AJC like this (error message with additional line breaks):
...\baz\src\main\java\com\foobar\showme\baz\TimestampedJPADurable.java [error]
Internal compiler error: java.lang.Exception:
java.lang.StackOverflowError at
org.aspectj.org.eclipse.jdt.internal.compiler.apt.dispatch.RoundDispatcher.handleProcessor(RoundDispatcher.java:172)
(no source information available)
A reproducer is at https://github.com/zenbones/showme. Thanks to @zenbones for reporting the problem.
See also dev-aspectj/aspectj-maven-plugin#108 (comment) for an AspectJ Maven workaround which can also be applied to the AJC command line: letting Javac take care of annotation processing and then using -proc:none
for AJC.