ModuleElement doesn't work with generated provides classes?
Josiah Noel
josiahnoel at gmail.com
Mon Aug 28 15:35:31 UTC 2023
Just tried explicitly adding a default constructor, but I still receive the
same error.
On Mon, Aug 28, 2023 at 11:29 AM Jonathan Gibbons <
jonathan.gibbons at oracle.com> wrote:
> The following error message seems relevant:
>
> /M:/Dev/module-directive-bug/blackbox-test-module/src/main/java/module-info.java:[6,41] the service implementation does not have
> a default constructor: io.avaje.modules.example.GeneratedProvider
>
> -- Jon
>
>
> On 8/26/23 1:04 PM, Josiah Noel wrote:
>
> 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/20230828/df6caf64/attachment.htm>
More information about the compiler-dev
mailing list