From 785768d3cc682940308bd835b50c3cf0a83c906b Mon Sep 17 00:00:00 2001 From: Dongie Agnir Date: Tue, 18 Aug 2026 15:33:53 -0700 Subject: [PATCH] Fix native image build when using Netty --- .../next-release/bugfix-NettyNIOHTTPClient-6918c48.json | 6 ++++++ .../netty-nio-client/native-image.properties | 5 ++++- 2 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 .changes/next-release/bugfix-NettyNIOHTTPClient-6918c48.json diff --git a/.changes/next-release/bugfix-NettyNIOHTTPClient-6918c48.json b/.changes/next-release/bugfix-NettyNIOHTTPClient-6918c48.json new file mode 100644 index 000000000000..85893b87d20c --- /dev/null +++ b/.changes/next-release/bugfix-NettyNIOHTTPClient-6918c48.json @@ -0,0 +1,6 @@ +{ + "type": "bugfix", + "category": "Netty NIO HTTP Client", + "contributor": "", + "description": "Fix `NettyNioAsyncHttpClient` errors when making requests in GraalVM native images, which can lead to timeout exceptions." +} diff --git a/http-clients/netty-nio-client/src/main/resources/META-INF/native-image/software.amazon.awssdk/netty-nio-client/native-image.properties b/http-clients/netty-nio-client/src/main/resources/META-INF/native-image/software.amazon.awssdk/netty-nio-client/native-image.properties index 1c7d1b66ae00..1e43c501d3bb 100644 --- a/http-clients/netty-nio-client/src/main/resources/META-INF/native-image/software.amazon.awssdk/netty-nio-client/native-image.properties +++ b/http-clients/netty-nio-client/src/main/resources/META-INF/native-image/software.amazon.awssdk/netty-nio-client/native-image.properties @@ -12,6 +12,8 @@ # express or implied. See the License for the specific language governing # permissions and limitations under the License. # +# Needed because native-maven-plugin's metadata repository excludes netty's own +# '--initialize-at-build-time=io.netty', leaving jctools queues to fail at run time. Args=--allow-incomplete-classpath \ --initialize-at-run-time=io.netty.internal.tcnative.SSL,\ io.netty.internal.tcnative.CertificateVerifier,\ @@ -19,4 +21,5 @@ Args=--allow-incomplete-classpath \ io.netty.internal.tcnative.SSLPrivateKeyMethod,\ io.netty.handler.ssl.OpenSslPrivateKeyMethod,\ io.netty.handler.ssl.ReferenceCountedOpenSslEngine,\ - io.netty.handler.ssl.OpenSslAsyncPrivateKeyMethod + io.netty.handler.ssl.OpenSslAsyncPrivateKeyMethod \ + --initialize-at-build-time=io.netty.util.internal.shaded.org.jctools