ModuleElement doesn't work with generated provides classes?

Josiah Noel josiahnoel at gmail.com
Sat Aug 26 20:04:02 UTC 2023


As requested, I have created a simple example to replicate this issue.
SentryMan/module-directive-bug:
showcase annotation processing bug (github.com)
<https://github.com/SentryMan/module-directive-bug/tree/master>

On Fri, Aug 25, 2023 at 9:00 PM Josiah Noel <josiahnoel at gmail.com> wrote:

> Say I got this module
>
> ```
>
> module nima.example {
>
> requires io.avaje.http.client;
>
> requires io.avaje.http.api;
>
> provides io.avaje.http.client.HttpClient.GeneratedComponent with
>
> com.jojo.helidon.api.client.httpclient.GeneratedHttpComponent;
>
> }
>
> ```
> and I generate com.jojo.helidon.api.client.httpclient.
> GeneratedHttpComponent in the last round of processing. When I get the
> module element during normal processing and so much as call
> `ModuleElement#getDirectives` and do nothing else, the processor will
> correctly generate, but compilation will still fail.(if I take out the
> module-info from the project it works though) I'm pretty sure it might have
> to do with the fact that GeneratedHttpComponent is created in the last
> round. Even so, not sure why it fails the compilation.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/compiler-dev/attachments/20230826/11ebb704/attachment-0001.htm>


More information about the compiler-dev mailing list