micronaut-projects / micronaut-gradle-plugin

A Gradle Plugin for Micronaut
Apache License 2.0
65 stars 43 forks source link

How reflect-config.json version is determined? #998

Closed maksimgurenko closed 4 months ago

maksimgurenko commented 4 months ago

Issue description

Hi,

I have a question here. I have searched for hours, and still can not determine how this part of DockerfileNative is formed when running gradle task :optimizedDockerfileNative

RUN mkdir -p /home/app/config-dirs/com.fasterxml.jackson.core/jackson-databind/2.15.2 RUN mkdir -p /home/app/config-dirs/org.hdrhistogram/HdrHistogram/2.1.12 RUN mkdir -p /home/app/config-dirs/io.netty/netty-common/4.1.80.Final RUN mkdir -p /home/app/config-dirs/org.apache.httpcomponents/httpclient/4.5.14 RUN mkdir -p /home/app/config-dirs/commons-logging/commons-logging/1.2 RUN mkdir -p /home/app/config-dirs/org.apache.commons/commons-compress/1.23.0 RUN mkdir -p /home/app/config-dirs/com.github.ben-manes.caffeine/caffeine/3.1.2 RUN mkdir -p /home/app/config-dirs/ch.qos.logback/logback-classic/1.4.9

I'm using netty 4.1.106.Final, why is it 4.1.80.Final ? Where is it coming from? How to override it? Other lib versions are different as well. There is nothing in the documentation

melix commented 4 months ago

The version is determined by whatever is available in the GraalVM Reachability Metadata Repository. Having "inconsistent" versions is usually not a problem since this metadata is not updated as long as newer releases are compatible.

Should you need newer metadata, you can learn about how to change it in the Native Build Tools documentation.

maksimgurenko commented 4 months ago

Thanks for the lightning response! In my brain, this metadata was completely separated from the reflection config. Thanks a lot!