gradlex-org/extra-java-module-info

'requireAllDefinedDependencies' does not work reliably for 'annotationProcessor'

Closed this issue · 1 comments

Because the annotationProcessor path is not passed into the transform requireAllDefinedDependencies fails for modules that are only on the annotationProcessor path and not on the runtime or compile classpath.

Looking at this, I also realized that the current decision of whether something is requires or requires transitive is flawed.
For that to work reliably, we would need the 'compile classpath' of the module we are looking at right now.
The 'compileDependencies' set in ExtraJavaModuleInfoTransform however is based only on the 'compile classpath' of the final consumer.

I'll change this behavior to always do requires transitive for now.