Install with Brew (20.2.0):
brew cask install graalvm-ce-java11
Magic from https://github.com/graalvm/homebrew-tap:
export PATH=/Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.3.0/Contents/Home/bin:"$PATH"
export JAVA_HOME=/Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.3.0/Contents/Home
Then install native image with gu:
gu list
gu available
gu install native-image
It's a big bucket of fail but it looks like this:
./gradlew build
native-image -cp build/libs/aws-iot-client.jar com.awslabs.iot.client.applications.AwsIotClientConsole --no-fallback --allow-incomplete-classpath -H:+TraceClassInitialization --initialize-at-build-time
And it looks like it is working but bombs out like this:
[com.awslabs.iot.client.applications.awsiotclientconsole:48479] classlist: 13,560.18 ms, 1.69 GB
[com.awslabs.iot.client.applications.awsiotclientconsole:48479] (cap): 6,927.93 ms, 1.69 GB
[com.awslabs.iot.client.applications.awsiotclientconsole:48479] setup: 9,198.77 ms, 1.69 GB
[com.awslabs.iot.client.applications.awsiotclientconsole:48479] (clinit): 404.67 ms, 4.80 GB
[com.awslabs.iot.client.applications.awsiotclientconsole:48479] (typeflow): 15,778.06 ms, 4.80 GB
[com.awslabs.iot.client.applications.awsiotclientconsole:48479] (objects): 14,657.51 ms, 4.80 GB
[com.awslabs.iot.client.applications.awsiotclientconsole:48479] (features): 1,050.43 ms, 4.80 GB
[com.awslabs.iot.client.applications.awsiotclientconsole:48479] analysis: 33,005.28 ms, 4.80 GB
[com.awslabs.iot.client.applications.awsiotclientconsole:48479] universe: 1,079.84 ms, 4.80 GB
[com.awslabs.iot.client.applications.awsiotclientconsole:48479] (parse): 2,304.02 ms, 4.80 GB
[com.awslabs.iot.client.applications.awsiotclientconsole:48479] (inline): 5,410.64 ms, 5.84 GB
[com.awslabs.iot.client.applications.awsiotclientconsole:48479] (compile): 19,151.45 ms, 5.68 GB
[com.awslabs.iot.client.applications.awsiotclientconsole:48479] compile: 29,999.24 ms, 5.68 GB
[com.awslabs.iot.client.applications.awsiotclientconsole:48479] image: 4,769.55 ms, 5.64 GB
[com.awslabs.iot.client.applications.awsiotclientconsole:48479] write: 967.82 ms, 5.64 GB
Fatal error:java.lang.RuntimeException: java.lang.RuntimeException: There was an error linking the native image: Linker command exited with 1
Linker command executed:
/usr/bin/cc -Wl,-no_compact_unwind -Wl,-exported_symbols_list -Wl,/var/folders/9c/tpt08_m11dx1rfdl906jcdyn5l_v81/T/SVM-8243022311279386964/exported_symbols.list -Wl,-x -arch x86_64 -o /Users/timmatt/Dropbox/github/aws-iot-client/com.awslabs.iot.client.applications.awsiotclientconsole /var/folders/9c/tpt08_m11dx1rfdl906jcdyn5l_v81/T/SVM-8243022311279386964/com.awslabs.iot.client.applications.awsiotclientconsole.o /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/svm/clibraries/darwin-amd64/liblibchelper.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libnet.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/svm/clibraries/darwin-amd64/libffi.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/svm/clibraries/darwin-amd64/libdarwin.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libextnet.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libnio.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libjava.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libfdlibm.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libzip.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/svm/clibraries/darwin-amd64/libjvm.a -v -L/var/folders/9c/tpt08_m11dx1rfdl906jcdyn5l_v81/T/SVM-8243022311279386964 -L/Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64 -L/Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/svm/clibraries/darwin-amd64 -Wl,-framework,CoreServices -Wl,-framework,Foundation -lpthread -ldl -lz
Linker command output:
Apple LLVM version 10.0.1 (clang-1001.0.46.4)
Target: x86_64-apple-darwin18.7.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
"/Library/Developer/CommandLineTools/usr/bin/ld" -demangle -lto_library /Library/Developer/CommandLineTools/usr/lib/libLTO.dylib -dynamic -arch x86_64 -macosx_version_min 10.14.0 -syslibroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -o /Users/timmatt/Dropbox/github/aws-iot-client/com.awslabs.iot.client.applications.awsiotclientconsole -L/var/folders/9c/tpt08_m11dx1rfdl906jcdyn5l_v81/T/SVM-8243022311279386964 -L/Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64 -L/Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/svm/clibraries/darwin-amd64 -no_compact_unwind -exported_symbols_list /var/folders/9c/tpt08_m11dx1rfdl906jcdyn5l_v81/T/SVM-8243022311279386964/exported_symbols.list -x /var/folders/9c/tpt08_m11dx1rfdl906jcdyn5l_v81/T/SVM-8243022311279386964/com.awslabs.iot.client.applications.awsiotclientconsole.o /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/svm/clibraries/darwin-amd64/liblibchelper.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libnet.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/svm/clibraries/darwin-amd64/libffi.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/svm/clibraries/darwin-amd64/libdarwin.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libextnet.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libnio.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libjava.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libfdlibm.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libzip.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/svm/clibraries/darwin-amd64/libjvm.a -framework CoreServices -framework Foundation -lpthread -ldl -lz -L/usr/local/lib -lSystem /Library/Developer/CommandLineTools/usr/lib/clang/10.0.1/lib/darwin/libclang_rt.osx.a
Undefined symbols for architecture x86_64:
"_Java_java_util_prefs_MacOSXPreferencesFile_addNode", referenced from:
___svm_vm_target_libraries in com.awslabs.iot.client.applications.awsiotclientconsole.o
"_Java_java_util_prefs_MacOSXPreferencesFile_synchronize", referenced from:
___svm_vm_target_libraries in com.awslabs.iot.client.applications.awsiotclientconsole.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
at java.base/java.util.concurrent.ForkJoinTask.getThrowableException(ForkJoinTask.java:600)
at java.base/java.util.concurrent.ForkJoinTask.get(ForkJoinTask.java:1006)
at com.oracle.svm.hosted.NativeImageGenerator.run(NativeImageGenerator.java:480)
at com.oracle.svm.hosted.NativeImageGeneratorRunner.buildImage(NativeImageGeneratorRunner.java:349)
at com.oracle.svm.hosted.NativeImageGeneratorRunner.build(NativeImageGeneratorRunner.java:508)
at com.oracle.svm.hosted.NativeImageGeneratorRunner.main(NativeImageGeneratorRunner.java:114)
at com.oracle.svm.hosted.NativeImageGeneratorRunner$JDK9Plus.main(NativeImageGeneratorRunner.java:537)
Caused by: java.lang.RuntimeException: There was an error linking the native image: Linker command exited with 1
Linker command executed:
/usr/bin/cc -Wl,-no_compact_unwind -Wl,-exported_symbols_list -Wl,/var/folders/9c/tpt08_m11dx1rfdl906jcdyn5l_v81/T/SVM-8243022311279386964/exported_symbols.list -Wl,-x -arch x86_64 -o /Users/timmatt/Dropbox/github/aws-iot-client/com.awslabs.iot.client.applications.awsiotclientconsole /var/folders/9c/tpt08_m11dx1rfdl906jcdyn5l_v81/T/SVM-8243022311279386964/com.awslabs.iot.client.applications.awsiotclientconsole.o /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/svm/clibraries/darwin-amd64/liblibchelper.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libnet.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/svm/clibraries/darwin-amd64/libffi.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/svm/clibraries/darwin-amd64/libdarwin.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libextnet.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libnio.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libjava.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libfdlibm.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libzip.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/svm/clibraries/darwin-amd64/libjvm.a -v -L/var/folders/9c/tpt08_m11dx1rfdl906jcdyn5l_v81/T/SVM-8243022311279386964 -L/Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64 -L/Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/svm/clibraries/darwin-amd64 -Wl,-framework,CoreServices -Wl,-framework,Foundation -lpthread -ldl -lz
Linker command output:
Apple LLVM version 10.0.1 (clang-1001.0.46.4)
Target: x86_64-apple-darwin18.7.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
"/Library/Developer/CommandLineTools/usr/bin/ld" -demangle -lto_library /Library/Developer/CommandLineTools/usr/lib/libLTO.dylib -dynamic -arch x86_64 -macosx_version_min 10.14.0 -syslibroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -o /Users/timmatt/Dropbox/github/aws-iot-client/com.awslabs.iot.client.applications.awsiotclientconsole -L/var/folders/9c/tpt08_m11dx1rfdl906jcdyn5l_v81/T/SVM-8243022311279386964 -L/Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64 -L/Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/svm/clibraries/darwin-amd64 -no_compact_unwind -exported_symbols_list /var/folders/9c/tpt08_m11dx1rfdl906jcdyn5l_v81/T/SVM-8243022311279386964/exported_symbols.list -x /var/folders/9c/tpt08_m11dx1rfdl906jcdyn5l_v81/T/SVM-8243022311279386964/com.awslabs.iot.client.applications.awsiotclientconsole.o /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/svm/clibraries/darwin-amd64/liblibchelper.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libnet.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/svm/clibraries/darwin-amd64/libffi.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/svm/clibraries/darwin-amd64/libdarwin.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libextnet.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libnio.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libjava.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libfdlibm.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/static/darwin-amd64/libzip.a /Library/Java/JavaVirtualMachines/graalvm-ce-java11-20.2.0/Contents/Home/lib/svm/clibraries/darwin-amd64/libjvm.a -framework CoreServices -framework Foundation -lpthread -ldl -lz -L/usr/local/lib -lSystem /Library/Developer/CommandLineTools/usr/lib/clang/10.0.1/lib/darwin/libclang_rt.osx.a
Undefined symbols for architecture x86_64:
"_Java_java_util_prefs_MacOSXPreferencesFile_addNode", referenced from:
___svm_vm_target_libraries in com.awslabs.iot.client.applications.awsiotclientconsole.o
"_Java_java_util_prefs_MacOSXPreferencesFile_synchronize", referenced from:
___svm_vm_target_libraries in com.awslabs.iot.client.applications.awsiotclientconsole.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
at com.oracle.svm.hosted.image.NativeBootImageViaCC.handleLinkerFailure(NativeBootImageViaCC.java:459)
at com.oracle.svm.hosted.image.NativeBootImageViaCC.write(NativeBootImageViaCC.java:434)
at com.oracle.svm.hosted.NativeImageGenerator.doRun(NativeImageGenerator.java:677)
at com.oracle.svm.hosted.NativeImageGenerator.lambda$run$0(NativeImageGenerator.java:468)
at java.base/java.util.concurrent.ForkJoinTask$AdaptedRunnableAction.exec(ForkJoinTask.java:1407)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)
Error: Image build request failed with exit status 1
Neglected Github issue here - https://github.com/oracle/graal/issues/2063
Removed Paho and it built something but it failed on Sun security stuff. Fixed that with this:
native-image -cp build/libs/aws-iot-client.jar com.awslabs.iot.client.applications.AwsIotClientConsole --no-fallback --allow-incomplete-classpath -H:+TraceClassInitialization --initialize-at-build-time --enable-http --enable-https --enable-url-protocols=http,https --enable-all-security-services
Then the logger failed. Created a reflection configuration file reflection-config.json
:
[
{
"name": "java.lang.String"
},
{
"name": "java.lang.Thread"
},
{
"name": "org.apache.commons.logging.LogFactory"
},
{
"name": "org.apache.commons.logging.impl.SimpleLog"
}
]
And then used this command:
native-image -cp build/libs/aws-iot-client.jar com.awslabs.iot.client.applications.AwsIotClientConsole --no-fallback --allow-incomplete-classpath -H:+TraceClassInitialization --initialize-at-build-time --enable-http --enable-https --enable-url-protocols=http,https --enable-all-security-services -H:ReflectionConfigurationFiles=reflection-config.json
And it still fails. Cool. It says this:
Caused by: java.lang.InstantiationException: Type `org.apache.commons.logging.impl.LogFactoryImpl` can not be instantiated reflectively as it does not have a no-parameter constructor or the no-parameter constructor has not been added explicitly to the native image.
This other command at least gives a different HTTP error:
native-image -cp build/libs/aws-iot-client.jar com.awslabs.iot.client.applications.AwsIotClientConsole --no-fallback --allow-incomplete-classpath -H:+TraceClassInitialization --initialize-at-build-time --enable-http --enable-https --enable-url-protocols=http,https --enable-all-security-services -H:ReflectionConfigurationFiles=reflection-config.json --no-server --rerun-class-initialization-at-runtime=javax.net.ssl.SSLContext -H:-UseServiceLoaderFeature
Which looks like this:
Exception in thread "main" software.amazon.awssdk.core.exception.SdkClientException: Unable to load an HTTP implementation from any provider in the chain. You must declare a dependency on an appropriate HTTP implementation or pass in an SdkHttpClient explicitly to the client builder.
New reflect config from https://stackoverflow.com/a/56947164/796579:
[
{
"name": "java.lang.String"
},
{
"name": "java.lang.Thread"
},
{
"allDeclaredClasses": true,
"allDeclaredConstructors": true,
"allDeclaredMethods": true,
"allPublicClasses": true,
"allPublicConstructors": true,
"allPublicMethods": true,
"name": "org.apache.commons.logging.impl.LogFactoryImpl"
},
{
"allDeclaredClasses": true,
"allDeclaredConstructors": true,
"allDeclaredMethods": true,
"allPublicClasses": true,
"allPublicConstructors": true,
"allPublicMethods": true,
"name": "java.lang.String"
},
{
"allDeclaredClasses": true,
"allDeclaredConstructors": true,
"allDeclaredMethods": true,
"allPublicClasses": true,
"allPublicConstructors": true,
"allPublicMethods": true,
"name": "org.apache.commons.logging.LogFactory"
},
{
"allDeclaredClasses": true,
"allDeclaredConstructors": true,
"allDeclaredMethods": true,
"allPublicClasses": true,
"allPublicConstructors": true,
"allPublicMethods": true,
"name": "org.apache.commons.logging.impl.SimpleLog"
}
]
New command based on error message:
native-image -cp build/libs/aws-iot-client.jar com.awslabs.iot.client.applications.AwsIotClientConsole --no-fallback --allow-incomplete-classpath -H:+TraceClassInitialization --initialize-at-build-time --enable-http --enable-https --enable-url-protocols=http,https --enable-all-security-services -H:ReflectionConfigurationFiles=reflection-config.json --no-server --rerun-class-initialization-at-runtime=javax.net.ssl.SSLContext -H:-UseServiceLoaderFeature -H:DynamicProxyConfigurationResources=org.apache.http.conn.HttpClientConnectionManager,org.apache.http.pool.ConnPoolControl,software.amazon.awssdk.http.apache.internal.conn.Wrapped
That failed Could not find dynamic proxy configuration resource "org.apache.http.conn.HttpClientConnectionManager"
Then created dynamic-proxies.json based on this https://github.com/oracle/graal/issues/1028:
dynamic-proxies.json
[
["org.apache.http.conn.HttpClientConnectionManager", "org.apache.http.pool.ConnPoolControl", "com.amazonaws.http.conn.Wrapped"]
]
New command:
native-image -cp build/libs/aws-iot-client.jar com.awslabs.iot.client.applications.AwsIotClientConsole --no-fallback --allow-incomplete-classpath -H:+TraceClassInitialization --initialize-at-build-time --enable-http --enable-https --enable-url-protocols=http,https --enable-all-security-services -H:ReflectionConfigurationFiles=reflection-config.json --no-server --rerun-class-initialization-at-runtime=javax.net.ssl.SSLContext -H:-UseServiceLoaderFeature -H:DynamicProxyConfigurationFiles="dynamic-proxies.json"
That no longer works with 20.3.0:
native-image -cp build/libs/aws-iot-client.jar com.awslabs.iot.client.applications.AwsIotClientConsole --no-fallback --allow-incomplete-classpath --initialize-at-build-time --enable-http --enable-https --enable-url-protocols=http,https --enable-all-security-services -H:ReflectionConfigurationFiles=reflection-config.json --no-server --rerun-class-initialization-at-runtime=javax.net.ssl.SSLContext -H:-UseServiceLoaderFeature -H:DynamicProxyConfigurationFiles="dynamic-proxies.json"
Deprecation warning so I did this:
native-image -cp build/libs/aws-iot-client.jar com.awslabs.iot.client.applications.AwsIotClientConsole --no-fallback --allow-incomplete-classpath --initialize-at-build-time --enable-http --enable-https --enable-url-protocols=http,https --enable-all-security-services -H:ReflectionConfigurationFiles=reflection-config.json --no-server --initialize-at-run-time=javax.net.ssl.SSLContext -H:-UseServiceLoaderFeature -H:DynamicProxyConfigurationFiles="dynamic-proxies.json"
Generate list of every single AWS class for inclusion in reflection:
unzip -t build/libs/aws-iot-client.jar | grep "\.class" | awk ' {print $2} ' | sed 's/\//./g' | sed 's/.class$//' | grep "^software" | sed 's/\(.*\)/{ "name" : "\1", "allDeclaredConstructors" : true, "allPublicConstructors" : true, "allDeclaredMethods" : true, "allPublicMethods" : true, "allDeclaredClasses" : true, "allPublicClasses" : true },/' > x
New new new command:
./gradlew build ;and time native-image -cp build/libs/aws-iot-client.jar com.awslabs.iot.client.applications.AwsIotClientConsole --no-fallback --allow-incomplete-classpath --initialize-at-build-time=io.netty,com.fasterxml.jackson,org.slf4j,org.apache.commons,org.apache.log4j,software.amazon.awssdk --initialize-at-run-time=io.netty.handler.codec.http.HttpObjectEncoder,io.netty.handler.codec.http.websocketx.WebSocket00FrameEncoder,io.netty.handler.codec.http2.Http2CodecUtil,io.netty.handler.codec.http2.DefaultHttp2FrameWriter,io.netty.handler.ssl.ReferenceCountedOpenSslServerContext,io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator,io.netty.handler.ssl.ReferenceCountedOpenSslEngine,io.netty.handler.ssl.ConscryptAlpnSslEngine,io.netty.handler.ssl.JettyNpnSslEngine,io.netty.handler.ssl.ReferenceCountedOpenSslClientContext --enable-http --enable-https --enable-url-protocols=http,https --enable-all-security-services --no-server -H:-UseServiceLoaderFeature -H:ReflectionConfigurationFiles=reflection-config.json -H:DynamicProxyConfigurationFiles=dynamic-proxies.json --initialize-at-run-time='io.netty.handler.ssl.ReferenceCountedOpenSslContext,io.netty.handler.ssl.JettyAlpnSslEngine$ServerEngine,io.netty.handler.ssl.JettyAlpnSslEngine$ClientEngine,io.netty.channel.unix.IovArray,io.netty.channel.epoll.EpollEventLoop,io.netty.channel.epoll.Native,io.netty.channel.unix.Errors,io.netty.channel.unix.Limits,io.netty.channel.unix.Socket'