oracle / graal

GraalVM compiles Java applications into native executables that start instantly, scale fast, and use fewer compute resources 🚀
https://www.graalvm.org
Other
20.39k stars 1.64k forks source link

Micrometer - java.lang.NoSuchMethodError: java.lang.invoke.MethodHandle.apply() #3231

Closed davidfrickert closed 3 years ago

davidfrickert commented 3 years ago

Describe the issue When attempting to use Micrometer AOP module to time function execution after starting native image it instantly crashes with java.lang.NoSuchMethodError: java.lang.invoke.MethodHandle.apply() (full stack trace below).

I suspect this is a reflection issue, but I'm not seeing if it is my problem (missing configuration) or native image problem.

Steps to reproduce the issue Build

  1. git clone --single-branch --branch micrometer-aspect git@github.com:davidfrickert/FaaS-GraalVM.git
  2. mvn clean package

Run

  1. ./target/app

Describe GraalVM and your environment:

More details Build

/usr/lib/jvm/java-11-graalvm/bin/java -Dmaven.multiModuleProjectDirectory=/home/david/projects/FaaS-GraalVM -Dmaven.home=/usr/share/idea/plugins/maven/lib/maven3 -Dclassworlds.conf=/usr/share/idea/plugins/maven/lib/maven3/bin/m2.conf -Dmaven.ext.class.path=/usr/share/idea/plugins/maven/lib/maven-event-listener.jar -javaagent:/usr/share/idea/lib/idea_rt.jar=43625:/usr/share/idea/bin -Dfile.encoding=UTF-8 -classpath /usr/share/idea/plugins/maven/lib/maven3/boot/plexus-classworlds.license:/usr/share/idea/plugins/maven/lib/maven3/boot/plexus-classworlds-2.6.0.jar org.codehaus.classworlds.Launcher -Didea.version=2020.3.2 package
[INFO] Scanning for projects...
[INFO] 
[INFO] ---------------------< pt.ulisboa.ist:GraalVMTest >---------------------
[INFO] Building GraalVMTest 1.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ GraalVMTest ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 3 resources
[INFO] 
[INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ GraalVMTest ---
[INFO] Nothing to compile - all classes are up to date
[INFO] 
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ GraalVMTest ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory /home/david/projects/FaaS-GraalVM/src/test/resources
[INFO] 
[INFO] --- maven-compiler-plugin:3.8.1:testCompile (default-testCompile) @ GraalVMTest ---
[INFO] No sources to compile
[INFO] 
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ GraalVMTest ---
[INFO] No tests to run.
[INFO] 
[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ GraalVMTest ---
[INFO] Building jar: /home/david/projects/FaaS-GraalVM/target/GraalVMTest-1.0-SNAPSHOT.jar
[INFO] 
[INFO] --- native-image-maven-plugin:21.0.0.2:native-image (default) @ GraalVMTest ---
[INFO] ImageClasspath Entry: org.springframework.experimental:spring-graalvm-native:jar:0.8.5:compile (file:///home/david/.m2/repository/org/springframework/experimental/spring-graalvm-native/0.8.5/spring-graalvm-native-0.8.5.jar)
[INFO] ImageClasspath Entry: org.springframework.boot:spring-boot-starter-web:jar:2.4.3:compile (file:///home/david/.m2/repository/org/springframework/boot/spring-boot-starter-web/2.4.3/spring-boot-starter-web-2.4.3.jar)
[INFO] ImageClasspath Entry: org.springframework.boot:spring-boot-starter:jar:2.4.3:compile (file:///home/david/.m2/repository/org/springframework/boot/spring-boot-starter/2.4.3/spring-boot-starter-2.4.3.jar)
[INFO] ImageClasspath Entry: org.springframework.boot:spring-boot:jar:2.4.3:compile (file:///home/david/.m2/repository/org/springframework/boot/spring-boot/2.4.3/spring-boot-2.4.3.jar)
[INFO] ImageClasspath Entry: org.springframework.boot:spring-boot-autoconfigure:jar:2.4.3:compile (file:///home/david/.m2/repository/org/springframework/boot/spring-boot-autoconfigure/2.4.3/spring-boot-autoconfigure-2.4.3.jar)
[INFO] ImageClasspath Entry: org.springframework.boot:spring-boot-starter-logging:jar:2.4.3:compile (file:///home/david/.m2/repository/org/springframework/boot/spring-boot-starter-logging/2.4.3/spring-boot-starter-logging-2.4.3.jar)
[INFO] ImageClasspath Entry: org.apache.logging.log4j:log4j-to-slf4j:jar:2.13.3:compile (file:///home/david/.m2/repository/org/apache/logging/log4j/log4j-to-slf4j/2.13.3/log4j-to-slf4j-2.13.3.jar)
[INFO] ImageClasspath Entry: org.apache.logging.log4j:log4j-api:jar:2.13.3:compile (file:///home/david/.m2/repository/org/apache/logging/log4j/log4j-api/2.13.3/log4j-api-2.13.3.jar)
[INFO] ImageClasspath Entry: org.slf4j:jul-to-slf4j:jar:1.7.30:compile (file:///home/david/.m2/repository/org/slf4j/jul-to-slf4j/1.7.30/jul-to-slf4j-1.7.30.jar)
[INFO] ImageClasspath Entry: jakarta.annotation:jakarta.annotation-api:jar:1.3.5:compile (file:///home/david/.m2/repository/jakarta/annotation/jakarta.annotation-api/1.3.5/jakarta.annotation-api-1.3.5.jar)
[INFO] ImageClasspath Entry: org.yaml:snakeyaml:jar:1.27:compile (file:///home/david/.m2/repository/org/yaml/snakeyaml/1.27/snakeyaml-1.27.jar)
[INFO] ImageClasspath Entry: org.springframework.boot:spring-boot-starter-json:jar:2.4.3:compile (file:///home/david/.m2/repository/org/springframework/boot/spring-boot-starter-json/2.4.3/spring-boot-starter-json-2.4.3.jar)
[INFO] ImageClasspath Entry: com.fasterxml.jackson.core:jackson-databind:jar:2.11.4:compile (file:///home/david/.m2/repository/com/fasterxml/jackson/core/jackson-databind/2.11.4/jackson-databind-2.11.4.jar)
[INFO] ImageClasspath Entry: com.fasterxml.jackson.core:jackson-annotations:jar:2.11.4:compile (file:///home/david/.m2/repository/com/fasterxml/jackson/core/jackson-annotations/2.11.4/jackson-annotations-2.11.4.jar)
[INFO] ImageClasspath Entry: com.fasterxml.jackson.core:jackson-core:jar:2.11.4:compile (file:///home/david/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.11.4/jackson-core-2.11.4.jar)
[INFO] ImageClasspath Entry: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:jar:2.11.4:compile (file:///home/david/.m2/repository/com/fasterxml/jackson/datatype/jackson-datatype-jdk8/2.11.4/jackson-datatype-jdk8-2.11.4.jar)
[INFO] ImageClasspath Entry: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:jar:2.11.4:compile (file:///home/david/.m2/repository/com/fasterxml/jackson/datatype/jackson-datatype-jsr310/2.11.4/jackson-datatype-jsr310-2.11.4.jar)
[INFO] ImageClasspath Entry: com.fasterxml.jackson.module:jackson-module-parameter-names:jar:2.11.4:compile (file:///home/david/.m2/repository/com/fasterxml/jackson/module/jackson-module-parameter-names/2.11.4/jackson-module-parameter-names-2.11.4.jar)
[INFO] ImageClasspath Entry: org.springframework.boot:spring-boot-starter-tomcat:jar:2.4.3:compile (file:///home/david/.m2/repository/org/springframework/boot/spring-boot-starter-tomcat/2.4.3/spring-boot-starter-tomcat-2.4.3.jar)
[INFO] ImageClasspath Entry: org.apache.tomcat.embed:tomcat-embed-core:jar:9.0.43:compile (file:///home/david/.m2/repository/org/apache/tomcat/embed/tomcat-embed-core/9.0.43/tomcat-embed-core-9.0.43.jar)
[INFO] ImageClasspath Entry: org.glassfish:jakarta.el:jar:3.0.3:compile (file:///home/david/.m2/repository/org/glassfish/jakarta.el/3.0.3/jakarta.el-3.0.3.jar)
[INFO] ImageClasspath Entry: org.apache.tomcat.embed:tomcat-embed-websocket:jar:9.0.43:compile (file:///home/david/.m2/repository/org/apache/tomcat/embed/tomcat-embed-websocket/9.0.43/tomcat-embed-websocket-9.0.43.jar)
[INFO] ImageClasspath Entry: org.springframework:spring-web:jar:5.3.4:compile (file:///home/david/.m2/repository/org/springframework/spring-web/5.3.4/spring-web-5.3.4.jar)
[INFO] ImageClasspath Entry: org.springframework:spring-beans:jar:5.3.4:compile (file:///home/david/.m2/repository/org/springframework/spring-beans/5.3.4/spring-beans-5.3.4.jar)
[INFO] ImageClasspath Entry: org.springframework:spring-webmvc:jar:5.3.4:compile (file:///home/david/.m2/repository/org/springframework/spring-webmvc/5.3.4/spring-webmvc-5.3.4.jar)
[INFO] ImageClasspath Entry: org.springframework:spring-aop:jar:5.3.4:compile (file:///home/david/.m2/repository/org/springframework/spring-aop/5.3.4/spring-aop-5.3.4.jar)
[INFO] ImageClasspath Entry: org.springframework:spring-context:jar:5.3.4:compile (file:///home/david/.m2/repository/org/springframework/spring-context/5.3.4/spring-context-5.3.4.jar)
[INFO] ImageClasspath Entry: org.springframework:spring-expression:jar:5.3.4:compile (file:///home/david/.m2/repository/org/springframework/spring-expression/5.3.4/spring-expression-5.3.4.jar)
[INFO] ImageClasspath Entry: org.springframework:spring-core:jar:5.3.4:compile (file:///home/david/.m2/repository/org/springframework/spring-core/5.3.4/spring-core-5.3.4.jar)
[INFO] ImageClasspath Entry: org.springframework:spring-jcl:jar:5.3.4:compile (file:///home/david/.m2/repository/org/springframework/spring-jcl/5.3.4/spring-jcl-5.3.4.jar)
[INFO] ImageClasspath Entry: org.springframework.boot:spring-boot-starter-actuator:jar:2.4.3:compile (file:///home/david/.m2/repository/org/springframework/boot/spring-boot-starter-actuator/2.4.3/spring-boot-starter-actuator-2.4.3.jar)
[INFO] ImageClasspath Entry: org.springframework.boot:spring-boot-actuator-autoconfigure:jar:2.4.3:compile (file:///home/david/.m2/repository/org/springframework/boot/spring-boot-actuator-autoconfigure/2.4.3/spring-boot-actuator-autoconfigure-2.4.3.jar)
[INFO] ImageClasspath Entry: org.springframework.boot:spring-boot-actuator:jar:2.4.3:compile (file:///home/david/.m2/repository/org/springframework/boot/spring-boot-actuator/2.4.3/spring-boot-actuator-2.4.3.jar)
[INFO] ImageClasspath Entry: io.micrometer:micrometer-core:jar:1.6.4:compile (file:///home/david/.m2/repository/io/micrometer/micrometer-core/1.6.4/micrometer-core-1.6.4.jar)
[INFO] ImageClasspath Entry: org.hdrhistogram:HdrHistogram:jar:2.1.12:compile (file:///home/david/.m2/repository/org/hdrhistogram/HdrHistogram/2.1.12/HdrHistogram-2.1.12.jar)
[INFO] ImageClasspath Entry: org.latencyutils:LatencyUtils:jar:2.0.3:runtime (file:///home/david/.m2/repository/org/latencyutils/LatencyUtils/2.0.3/LatencyUtils-2.0.3.jar)
[INFO] ImageClasspath Entry: io.micrometer:micrometer-registry-prometheus:jar:1.6.4:compile (file:///home/david/.m2/repository/io/micrometer/micrometer-registry-prometheus/1.6.4/micrometer-registry-prometheus-1.6.4.jar)
[INFO] ImageClasspath Entry: io.prometheus:simpleclient_common:jar:0.9.0:compile (file:///home/david/.m2/repository/io/prometheus/simpleclient_common/0.9.0/simpleclient_common-0.9.0.jar)
[INFO] ImageClasspath Entry: io.prometheus:simpleclient:jar:0.9.0:compile (file:///home/david/.m2/repository/io/prometheus/simpleclient/0.9.0/simpleclient-0.9.0.jar)
[INFO] ImageClasspath Entry: org.projectlombok:lombok:jar:1.18.16:compile (file:///home/david/.m2/repository/org/projectlombok/lombok/1.18.16/lombok-1.18.16.jar)
[INFO] ImageClasspath Entry: io.vavr:vavr:jar:1.0.0-alpha-3:compile (file:///home/david/.m2/repository/io/vavr/vavr/1.0.0-alpha-3/vavr-1.0.0-alpha-3.jar)
[INFO] ImageClasspath Entry: org.apache.commons:commons-lang3:jar:3.11:compile (file:///home/david/.m2/repository/org/apache/commons/commons-lang3/3.11/commons-lang3-3.11.jar)
[INFO] ImageClasspath Entry: ch.qos.logback:logback-classic:jar:1.2.3:compile (file:///home/david/.m2/repository/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar)
[INFO] ImageClasspath Entry: ch.qos.logback:logback-core:jar:1.2.3:compile (file:///home/david/.m2/repository/ch/qos/logback/logback-core/1.2.3/logback-core-1.2.3.jar)
[INFO] ImageClasspath Entry: org.slf4j:slf4j-api:jar:1.7.25:compile (file:///home/david/.m2/repository/org/slf4j/slf4j-api/1.7.25/slf4j-api-1.7.25.jar)
[INFO] ImageClasspath Entry: pt.ulisboa.ist:GraalVMTest:jar:1.0-SNAPSHOT (file:///home/david/projects/FaaS-GraalVM/target/GraalVMTest-1.0-SNAPSHOT.jar)
[INFO] Executing: /usr/lib/jvm/java-11-graalvm/lib/svm/bin/native-image -cp /home/david/.m2/repository/org/springframework/experimental/spring-graalvm-native/0.8.5/spring-graalvm-native-0.8.5.jar:/home/david/.m2/repository/org/springframework/boot/spring-boot-starter-web/2.4.3/spring-boot-starter-web-2.4.3.jar:/home/david/.m2/repository/org/springframework/boot/spring-boot-starter/2.4.3/spring-boot-starter-2.4.3.jar:/home/david/.m2/repository/org/springframework/boot/spring-boot/2.4.3/spring-boot-2.4.3.jar:/home/david/.m2/repository/org/springframework/boot/spring-boot-autoconfigure/2.4.3/spring-boot-autoconfigure-2.4.3.jar:/home/david/.m2/repository/org/springframework/boot/spring-boot-starter-logging/2.4.3/spring-boot-starter-logging-2.4.3.jar:/home/david/.m2/repository/org/apache/logging/log4j/log4j-to-slf4j/2.13.3/log4j-to-slf4j-2.13.3.jar:/home/david/.m2/repository/org/apache/logging/log4j/log4j-api/2.13.3/log4j-api-2.13.3.jar:/home/david/.m2/repository/org/slf4j/jul-to-slf4j/1.7.30/jul-to-slf4j-1.7.30.jar:/home/david/.m2/repository/jakarta/annotation/jakarta.annotation-api/1.3.5/jakarta.annotation-api-1.3.5.jar:/home/david/.m2/repository/org/yaml/snakeyaml/1.27/snakeyaml-1.27.jar:/home/david/.m2/repository/org/springframework/boot/spring-boot-starter-json/2.4.3/spring-boot-starter-json-2.4.3.jar:/home/david/.m2/repository/com/fasterxml/jackson/core/jackson-databind/2.11.4/jackson-databind-2.11.4.jar:/home/david/.m2/repository/com/fasterxml/jackson/core/jackson-annotations/2.11.4/jackson-annotations-2.11.4.jar:/home/david/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.11.4/jackson-core-2.11.4.jar:/home/david/.m2/repository/com/fasterxml/jackson/datatype/jackson-datatype-jdk8/2.11.4/jackson-datatype-jdk8-2.11.4.jar:/home/david/.m2/repository/com/fasterxml/jackson/datatype/jackson-datatype-jsr310/2.11.4/jackson-datatype-jsr310-2.11.4.jar:/home/david/.m2/repository/com/fasterxml/jackson/module/jackson-module-parameter-names/2.11.4/jackson-module-parameter-names-2.11.4.jar:/home/david/.m2/repository/org/springframework/boot/spring-boot-starter-tomcat/2.4.3/spring-boot-starter-tomcat-2.4.3.jar:/home/david/.m2/repository/org/apache/tomcat/embed/tomcat-embed-core/9.0.43/tomcat-embed-core-9.0.43.jar:/home/david/.m2/repository/org/glassfish/jakarta.el/3.0.3/jakarta.el-3.0.3.jar:/home/david/.m2/repository/org/apache/tomcat/embed/tomcat-embed-websocket/9.0.43/tomcat-embed-websocket-9.0.43.jar:/home/david/.m2/repository/org/springframework/spring-web/5.3.4/spring-web-5.3.4.jar:/home/david/.m2/repository/org/springframework/spring-beans/5.3.4/spring-beans-5.3.4.jar:/home/david/.m2/repository/org/springframework/spring-webmvc/5.3.4/spring-webmvc-5.3.4.jar:/home/david/.m2/repository/org/springframework/spring-aop/5.3.4/spring-aop-5.3.4.jar:/home/david/.m2/repository/org/springframework/spring-context/5.3.4/spring-context-5.3.4.jar:/home/david/.m2/repository/org/springframework/spring-expression/5.3.4/spring-expression-5.3.4.jar:/home/david/.m2/repository/org/springframework/spring-core/5.3.4/spring-core-5.3.4.jar:/home/david/.m2/repository/org/springframework/spring-jcl/5.3.4/spring-jcl-5.3.4.jar:/home/david/.m2/repository/org/springframework/boot/spring-boot-starter-actuator/2.4.3/spring-boot-starter-actuator-2.4.3.jar:/home/david/.m2/repository/org/springframework/boot/spring-boot-actuator-autoconfigure/2.4.3/spring-boot-actuator-autoconfigure-2.4.3.jar:/home/david/.m2/repository/org/springframework/boot/spring-boot-actuator/2.4.3/spring-boot-actuator-2.4.3.jar:/home/david/.m2/repository/io/micrometer/micrometer-core/1.6.4/micrometer-core-1.6.4.jar:/home/david/.m2/repository/org/hdrhistogram/HdrHistogram/2.1.12/HdrHistogram-2.1.12.jar:/home/david/.m2/repository/org/latencyutils/LatencyUtils/2.0.3/LatencyUtils-2.0.3.jar:/home/david/.m2/repository/io/micrometer/micrometer-registry-prometheus/1.6.4/micrometer-registry-prometheus-1.6.4.jar:/home/david/.m2/repository/io/prometheus/simpleclient_common/0.9.0/simpleclient_common-0.9.0.jar:/home/david/.m2/repository/io/prometheus/simpleclient/0.9.0/simpleclient-0.9.0.jar:/home/david/.m2/repository/org/projectlombok/lombok/1.18.16/lombok-1.18.16.jar:/home/david/.m2/repository/io/vavr/vavr/1.0.0-alpha-3/vavr-1.0.0-alpha-3.jar:/home/david/.m2/repository/org/apache/commons/commons-lang3/3.11/commons-lang3-3.11.jar:/home/david/.m2/repository/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar:/home/david/.m2/repository/ch/qos/logback/logback-core/1.2.3/logback-core-1.2.3.jar:/home/david/.m2/repository/org/slf4j/slf4j-api/1.7.25/slf4j-api-1.7.25.jar:/home/david/projects/FaaS-GraalVM/target/GraalVMTest-1.0-SNAPSHOT.jar --no-fallback --enable-https --enable-http --native-image-info --verbose -H:ReflectionConfigurationFiles=classes/reflection.json -H:SerializationConfigurationFiles=classes/serialization.json -H:+ReportExceptionStackTraces -H:Class=pt.ist.photon_graal.App -H:Name=app
Executing [
/usr/lib/jvm/java-11-graalvm/bin/java \
-XX:+UseParallelGC \
-XX:+UnlockExperimentalVMOptions \
-XX:+EnableJVMCI \
-Dtruffle.TrustAllTruffleRuntimeProviders=true \
-Dtruffle.TruffleRuntime=com.oracle.truffle.api.impl.DefaultTruffleRuntime \
-Dgraalvm.ForcePolyglotInvalid=true \
-Dgraalvm.locatorDisabled=true \
-Dsubstratevm.IgnoreGraalVersionCheck=true \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.aarch64=ALL-UNNAMED \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.amd64=ALL-UNNAMED \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.code.site=ALL-UNNAMED \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.code.stack=ALL-UNNAMED \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.code=ALL-UNNAMED \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.common=ALL-UNNAMED \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.hotspot.aarch64=ALL-UNNAMED \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.hotspot.amd64=ALL-UNNAMED \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.hotspot.sparc=ALL-UNNAMED \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.hotspot=ALL-UNNAMED \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.meta=ALL-UNNAMED \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.runtime=ALL-UNNAMED \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.services=ALL-UNNAMED \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.sparc=ALL-UNNAMED \
--add-exports=org.graalvm.truffle/com.oracle.truffle.api=ALL-UNNAMED \
--add-opens=jdk.internal.vm.compiler/org.graalvm.compiler.debug=ALL-UNNAMED \
--add-opens=jdk.internal.vm.compiler/org.graalvm.compiler.nodes=ALL-UNNAMED \
--add-opens=jdk.unsupported/sun.reflect=ALL-UNNAMED \
--add-opens=java.base/jdk.internal.module=ALL-UNNAMED \
--add-opens=java.base/jdk.internal.ref=ALL-UNNAMED \
--add-opens=java.base/jdk.internal.reflect=ALL-UNNAMED \
--add-opens=java.base/java.io=ALL-UNNAMED \
--add-opens=java.base/java.lang=ALL-UNNAMED \
--add-opens=java.base/java.lang.reflect=ALL-UNNAMED \
--add-opens=java.base/java.lang.invoke=ALL-UNNAMED \
--add-opens=java.base/java.lang.ref=ALL-UNNAMED \
--add-opens=java.base/java.net=ALL-UNNAMED \
--add-opens=java.base/java.nio=ALL-UNNAMED \
--add-opens=java.base/java.nio.file=ALL-UNNAMED \
--add-opens=java.base/java.security=ALL-UNNAMED \
--add-opens=java.base/javax.crypto=ALL-UNNAMED \
--add-opens=java.base/java.util=ALL-UNNAMED \
--add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED \
--add-opens=java.base/sun.security.x509=ALL-UNNAMED \
--add-opens=java.base/jdk.internal.logger=ALL-UNNAMED \
--add-opens=org.graalvm.sdk/org.graalvm.nativeimage.impl=ALL-UNNAMED \
--add-opens=org.graalvm.sdk/org.graalvm.polyglot=ALL-UNNAMED \
--add-opens=org.graalvm.truffle/com.oracle.truffle.polyglot=ALL-UNNAMED \
--add-opens=org.graalvm.truffle/com.oracle.truffle.api.impl=ALL-UNNAMED \
-XX:+UseJVMCINativeLibrary \
-Xss10m \
-Xms1g \
-Xmx13436125184 \
-Duser.country=US \
-Duser.language=en \
-Djava.awt.headless=true \
-Dorg.graalvm.version=21.0.0.2 \
-Dorg.graalvm.config= \
-Dcom.oracle.graalvm.isaot=true \
-Djava.system.class.loader=com.oracle.svm.hosted.NativeImageSystemClassLoader \
-Dawt.toolkit=sun.awt.X11.XToolkit \
-Djava.awt.graphicsenv=sun.awt.X11GraphicsEnvironment \
-Djava.awt.printerjob=sun.print.PSPrinterJob \
-Xshare:off \
--module-path \
/usr/lib/jvm/java-11-graalvm/lib/truffle/truffle-api.jar \
-Djdk.internal.lambda.disableEagerInitialization=true \
-Djdk.internal.lambda.eagerlyInitialize=false \
-Djava.lang.invoke.InnerClassLambdaMetafactory.initializeLambdas=false \
-javaagent:/usr/lib/jvm/java-11-graalvm/lib/svm/builder/svm.jar \
-cp \
/usr/lib/jvm/java-11-graalvm/lib/svm/builder/svm.jar:/usr/lib/jvm/java-11-graalvm/lib/svm/builder/svm-llvm.jar:/usr/lib/jvm/java-11-graalvm/lib/svm/builder/javacpp-shadowed.jar:/usr/lib/jvm/java-11-graalvm/lib/svm/builder/pointsto.jar:/usr/lib/jvm/java-11-graalvm/lib/svm/builder/llvm-wrapper-shadowed.jar:/usr/lib/jvm/java-11-graalvm/lib/svm/builder/llvm-platform-specific-shadowed.jar:/usr/lib/jvm/java-11-graalvm/lib/svm/builder/objectfile.jar \
'com.oracle.svm.hosted.NativeImageGeneratorRunner$JDK9Plus' \
-watchpid \
64064 \
-imagecp \
/usr/lib/jvm/java-11-graalvm/lib/svm/library-support.jar:/home/david/.m2/repository/org/springframework/experimental/spring-graalvm-native/0.8.5/spring-graalvm-native-0.8.5.jar:/home/david/.m2/repository/org/springframework/boot/spring-boot-starter-web/2.4.3/spring-boot-starter-web-2.4.3.jar:/home/david/.m2/repository/org/springframework/boot/spring-boot-starter/2.4.3/spring-boot-starter-2.4.3.jar:/home/david/.m2/repository/org/springframework/boot/spring-boot/2.4.3/spring-boot-2.4.3.jar:/home/david/.m2/repository/org/springframework/boot/spring-boot-autoconfigure/2.4.3/spring-boot-autoconfigure-2.4.3.jar:/home/david/.m2/repository/org/springframework/boot/spring-boot-starter-logging/2.4.3/spring-boot-starter-logging-2.4.3.jar:/home/david/.m2/repository/org/apache/logging/log4j/log4j-to-slf4j/2.13.3/log4j-to-slf4j-2.13.3.jar:/home/david/.m2/repository/org/apache/logging/log4j/log4j-api/2.13.3/log4j-api-2.13.3.jar:/home/david/.m2/repository/org/slf4j/jul-to-slf4j/1.7.30/jul-to-slf4j-1.7.30.jar:/home/david/.m2/repository/jakarta/annotation/jakarta.annotation-api/1.3.5/jakarta.annotation-api-1.3.5.jar:/home/david/.m2/repository/org/yaml/snakeyaml/1.27/snakeyaml-1.27.jar:/home/david/.m2/repository/org/springframework/boot/spring-boot-starter-json/2.4.3/spring-boot-starter-json-2.4.3.jar:/home/david/.m2/repository/com/fasterxml/jackson/core/jackson-databind/2.11.4/jackson-databind-2.11.4.jar:/home/david/.m2/repository/com/fasterxml/jackson/core/jackson-annotations/2.11.4/jackson-annotations-2.11.4.jar:/home/david/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.11.4/jackson-core-2.11.4.jar:/home/david/.m2/repository/com/fasterxml/jackson/datatype/jackson-datatype-jdk8/2.11.4/jackson-datatype-jdk8-2.11.4.jar:/home/david/.m2/repository/com/fasterxml/jackson/datatype/jackson-datatype-jsr310/2.11.4/jackson-datatype-jsr310-2.11.4.jar:/home/david/.m2/repository/com/fasterxml/jackson/module/jackson-module-parameter-names/2.11.4/jackson-module-parameter-names-2.11.4.jar:/home/david/.m2/repository/org/springframework/boot/spring-boot-starter-tomcat/2.4.3/spring-boot-starter-tomcat-2.4.3.jar:/home/david/.m2/repository/org/apache/tomcat/embed/tomcat-embed-core/9.0.43/tomcat-embed-core-9.0.43.jar:/home/david/.m2/repository/org/glassfish/jakarta.el/3.0.3/jakarta.el-3.0.3.jar:/home/david/.m2/repository/org/apache/tomcat/embed/tomcat-embed-websocket/9.0.43/tomcat-embed-websocket-9.0.43.jar:/home/david/.m2/repository/org/springframework/spring-web/5.3.4/spring-web-5.3.4.jar:/home/david/.m2/repository/org/springframework/spring-beans/5.3.4/spring-beans-5.3.4.jar:/home/david/.m2/repository/org/springframework/spring-webmvc/5.3.4/spring-webmvc-5.3.4.jar:/home/david/.m2/repository/org/springframework/spring-aop/5.3.4/spring-aop-5.3.4.jar:/home/david/.m2/repository/org/springframework/spring-context/5.3.4/spring-context-5.3.4.jar:/home/david/.m2/repository/org/springframework/spring-expression/5.3.4/spring-expression-5.3.4.jar:/home/david/.m2/repository/org/springframework/spring-core/5.3.4/spring-core-5.3.4.jar:/home/david/.m2/repository/org/springframework/spring-jcl/5.3.4/spring-jcl-5.3.4.jar:/home/david/.m2/repository/org/springframework/boot/spring-boot-starter-actuator/2.4.3/spring-boot-starter-actuator-2.4.3.jar:/home/david/.m2/repository/org/springframework/boot/spring-boot-actuator-autoconfigure/2.4.3/spring-boot-actuator-autoconfigure-2.4.3.jar:/home/david/.m2/repository/org/springframework/boot/spring-boot-actuator/2.4.3/spring-boot-actuator-2.4.3.jar:/home/david/.m2/repository/io/micrometer/micrometer-core/1.6.4/micrometer-core-1.6.4.jar:/home/david/.m2/repository/org/hdrhistogram/HdrHistogram/2.1.12/HdrHistogram-2.1.12.jar:/home/david/.m2/repository/org/latencyutils/LatencyUtils/2.0.3/LatencyUtils-2.0.3.jar:/home/david/.m2/repository/io/micrometer/micrometer-registry-prometheus/1.6.4/micrometer-registry-prometheus-1.6.4.jar:/home/david/.m2/repository/io/prometheus/simpleclient_common/0.9.0/simpleclient_common-0.9.0.jar:/home/david/.m2/repository/io/prometheus/simpleclient/0.9.0/simpleclient-0.9.0.jar:/home/david/.m2/repository/org/projectlombok/lombok/1.18.16/lombok-1.18.16.jar:/home/david/.m2/repository/io/vavr/vavr/1.0.0-alpha-3/vavr-1.0.0-alpha-3.jar:/home/david/.m2/repository/org/apache/commons/commons-lang3/3.11/commons-lang3-3.11.jar:/home/david/.m2/repository/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar:/home/david/.m2/repository/ch/qos/logback/logback-core/1.2.3/logback-core-1.2.3.jar:/home/david/.m2/repository/org/slf4j/slf4j-api/1.7.25/slf4j-api-1.7.25.jar:/home/david/projects/FaaS-GraalVM/target/GraalVMTest-1.0-SNAPSHOT.jar \
-H:Path=/home/david/projects/FaaS-GraalVM/target \
-H:+AllowIncompleteClasspath \
-H:+ReportUnsupportedElementsAtRuntime \
-H:+InstallExitHandlers \
-H:ReflectionConfigurationResources=META-INF/native-image/org.apache.tomcat.embed/tomcat-embed-core/tomcat-reflection.json \
-H:ResourceConfigurationResources=META-INF/native-image/org.apache.tomcat.embed/tomcat-embed-core/tomcat-resource.json \
-H:ReflectionConfigurationResources=META-INF/native-image/org.apache.tomcat.embed/tomcat-embed-websocket/tomcat-reflection.json \
-H:ResourceConfigurationResources=META-INF/native-image/org.apache.tomcat.embed/tomcat-embed-websocket/tomcat-resource.json \
-H:FallbackThreshold=0 \
-H:EnableURLProtocols=https \
-H:EnableURLProtocols=http \
-H:+DumpTargetInfo \
-H:+ReportExceptionStackTraces \
-H:Class=pt.ist.photon_graal.App \
-H:Name=app \
-H:CLibraryPath=/usr/lib/jvm/java-11-graalvm/lib/svm/clibraries/linux-amd64 \
-H:ReflectionConfigurationFiles=/home/david/projects/FaaS-GraalVM/target/classes/reflection.json \
-H:SerializationConfigurationFiles=/home/david/projects/FaaS-GraalVM/target/classes/serialization.json \

]
[app:64086]    classlist:   3,162.48 ms,  1.19 GB
   _____                     _                             _   __           __     _              
  / ___/    ____    _____   (_)   ____    ____ _          / | / /  ____ _  / /_   (_) _   __  ___ 
  \__ \    / __ \  / ___/  / /   / __ \  / __ `/         /  |/ /  / __ `/ / __/  / / | | / / / _ \
 ___/ /   / /_/ / / /     / /   / / / / / /_/ /         / /|  /  / /_/ / / /_   / /  | |/ / /  __/
/____/   / .___/ /_/     /_/   /_/ /_/  \__, /         /_/ |_/   \__,_/  \__/  /_/   |___/  \___/ 
        /_/                            /____/                                                     
Removing unused configurations
Verification turned on
Removing XML support
Removing JMX support
Use -Dspring.native.verbose=true on native-image call to see more detailed information from the feature
[app:64086]        (cap):     727.31 ms,  1.19 GB
feature operating mode: reflection (spring init active? false)
Found #18 types in static reflection list to register
Skipping #16 types not on the classpath
Attempting proxy registration of #12 proxies
Skipped registration of #7 proxies - relevant types not on classpath
[app:64086]        setup:   3,515.61 ms,  1.19 GB
Configuring initialization time for specific types and packages:
#139 buildtime-init-classes   #22 buildtime-init-packages   #18 runtime-init-classes    #0 runtime-init-packages

Warning: class initialization of class org.springframework.boot.validation.MessageInterpolatorFactory failed with exception java.lang.NoClassDefFoundError: javax/validation/ValidationException. This class will be initialized at run time because option --allow-incomplete-classpath is used for image building. Use the option --initialize-at-run-time=org.springframework.boot.validation.MessageInterpolatorFactory to explicitly request delayed initialization of this class.
[verification] The type org.springframework.web.servlet.config.annotation.ResourceChainRegistration is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [org.webjars.WebJarAssetLocator]
[verification] The type org.springframework.instrument.classloading.InstrumentationLoadTimeWeaver is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [org.springframework.instrument.InstrumentationSavingAgent]
[verification] The type org.springframework.boot.actuate.endpoint.jmx.EndpointMBean is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [reactor.core.publisher.Mono]
[verification] The type org.springframework.web.servlet.function.DefaultAsyncServerResponse is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [org.reactivestreams.Publisher]
[verification] The type org.springframework.web.servlet.config.ResourcesBeanDefinitionParser is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [org.webjars.WebJarAssetLocator]
[verification] The type org.springframework.web.servlet.view.InternalResourceViewResolver is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [javax.servlet.jsp.jstl.core.Config]
[verification] The type org.springframework.web.servlet.config.AnnotationDrivenBeanDefinitionParser is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [javax.validation.Validator, com.rometools.rome.feed.WireFeed, javax.xml.bind.Binder, com.fasterxml.jackson.databind.ObjectMapper, com.fasterxml.jackson.core.JsonGenerator, com.fasterxml.jackson.dataformat.xml.XmlMapper, com.fasterxml.jackson.dataformat.smile.SmileFactory, com.fasterxml.jackson.dataformat.cbor.CBORFactory, com.google.gson.Gson]
[verification] The type org.springframework.context.annotation.AnnotationConfigUtils is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [javax.annotation.Resource, javax.persistence.EntityManagerFactory, org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor]
[verification] The type org.springframework.boot.actuate.endpoint.invoke.reflect.OperationMethodParameter is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [javax.annotation.Nonnull]
[verification] The type org.springframework.http.client.reactive.JettyClientHttpResponse is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [org.eclipse.jetty.websocket.server.JettyWebSocketServerContainer]
[verification] The type org.springframework.cache.config.AnnotationDrivenCacheBeanDefinitionParser is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [javax.cache.Cache, org.springframework.cache.jcache.interceptor.DefaultJCacheOperationSource]
[verification] The type org.springframework.web.context.request.RequestContextHolder is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [javax.faces.context.FacesContext]
[verification] The type org.springframework.core.KotlinDetector is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [kotlin.reflect.full.KClasses]
[verification] The type org.springframework.web.servlet.support.RequestContext is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [javax.servlet.jsp.jstl.core.Config]
[verification] The type org.springframework.boot.actuate.endpoint.invoker.cache.CachingOperationInvoker is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [reactor.core.publisher.Mono]
[verification] The type org.springframework.core.ReactiveAdapterRegistry is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [reactor.core.publisher.Flux, rx.Observable, rx.RxReactiveStreams, io.reactivex.Flowable, io.reactivex.rxjava3.core.Flowable, java.util.concurrent.Flow.Publisher, kotlinx.coroutines.reactor.MonoKt]
[verification] The type org.springframework.boot.autoconfigure.web.format.WebConversionService is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [javax.money.MonetaryAmount]
[verification] The type org.springframework.web.context.support.WebApplicationContextUtils is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [javax.faces.context.FacesContext]
[verification] The type org.springframework.http.codec.xml.XmlEventDecoder is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [com.fasterxml.aalto.AsyncXMLStreamReader]
[verification] The type org.springframework.boot.actuate.endpoint.web.annotation.DiscoveredWebOperation is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [org.reactivestreams.Publisher]
[verification] The type org.springframework.context.event.ApplicationListenerMethodAdapter is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [org.reactivestreams.Publisher]
[verification] The type org.springframework.boot.jdbc.DataSourceUnwrapper is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [org.springframework.jdbc.datasource.DelegatingDataSource]
[verification] The type org.springframework.context.config.MBeanServerBeanDefinitionParser is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [weblogic.management.Helper, com.ibm.websphere.management.AdminServiceFactory]
[verification] The type org.springframework.format.support.DefaultFormattingConversionService is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [javax.money.MonetaryAmount, org.joda.time.YearMonth]
[verification] The type org.springframework.cache.annotation.CachingConfigurationSelector is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [javax.cache.Cache, org.springframework.cache.jcache.config.ProxyJCacheConfiguration]
[verification] The type org.springframework.http.server.reactive.JettyHttpHandlerAdapter is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [org.eclipse.jetty.http.CookieCutter]
[verification] The type org.springframework.web.servlet.view.tiles3.TilesConfigurer is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [org.apache.tiles.el.ELAttributeEvaluator]
[verification] The type org.springframework.boot.actuate.endpoint.web.jersey.JerseyEndpointResourceFactory$OperationInflector is making isPresent() calls in the static initializer, could be worth specifying build-time-initialization. It appears to be making isPresent() checks on [reactor.core.publisher.Mono]
Registering resources - #0 bundles
Processing META-INF/spring.factories files...
spring.factories processing, problem adding access for key org.springframework.boot.diagnostics.analyzer.ValidationExceptionFailureAnalyzer: javax/validation/ValidationException
spring.factories processing, problem adding access for key org.springframework.boot.liquibase.LiquibaseChangelogMissingFailureAnalyzer: liquibase/exception/ChangeLogParseException
Processing spring.factories - PropertySourceLoader lists #2 property source loaders
spring.factories processing, problem adding access for key org.springframework.boot.autoconfigure.jdbc.HikariDriverConfigurationFailureAnalyzer: org/springframework/jdbc/CannotGetJdbcConnectionException
Processing spring.factories - EnableAutoConfiguration lists #130 configurations
Reducing access on org.springframework.boot.autoconfigure.web.ServerProperties$Netty because HttpServer not around
Reducing access on org.springframework.boot.autoconfigure.web.ServerProperties$Undertow because Undertow not around
Reducing access on org.springframework.boot.autoconfigure.web.ServerProperties$Jetty because WebAppContext not around
Reducing access on org.springframework.boot.autoconfigure.web.ServerProperties$Netty because HttpServer not around
Reducing access on org.springframework.boot.autoconfigure.web.ServerProperties$Undertow because Undertow not around
Reducing access on org.springframework.boot.autoconfigure.web.ServerProperties$Jetty because WebAppContext not around
Reducing access on org.springframework.boot.autoconfigure.web.ServerProperties$Undertow because Undertow not around
Reducing access on org.springframework.boot.autoconfigure.web.ServerProperties$Netty because HttpServer not around
Reducing access on org.springframework.boot.autoconfigure.web.ServerProperties$Jetty because WebAppContext not around
Reducing access on org.springframework.boot.autoconfigure.web.ServerProperties$Netty because HttpServer not around
Reducing access on org.springframework.boot.autoconfigure.web.ServerProperties$Undertow because Undertow not around
Reducing access on org.springframework.boot.autoconfigure.web.ServerProperties$Jetty because WebAppContext not around
Excluding 109 auto-configurations from spring.factories file
Processing spring.factories - EnableAutoConfiguration lists #97 configurations
Excluding 53 auto-configurations from spring.factories file
Found no META-INF/spring.components -> synthesizing one...
Computed spring.components is 
vvv
pt.ist.photon_graal.rest.RestFunctionRunner=org.springframework.stereotype.Component
pt.ist.photon_graal.App=org.springframework.stereotype.Component
pt.ist.photon_graal.runner.FunctionRunnerImpl=org.springframework.stereotype.Component
^^^
Number of types dynamically registered for reflective access: #2699
# Building image for target platform: org.graalvm.nativeimage.Platform$LINUX_AMD64
# Using native toolchain:
#   Name: GNU project C and C++ compiler (gcc)
#   Vendor: pc
#   Version: 10.2.0
#   Target architecture: x86_64
#   Path: /usr/bin/gcc
# Using CLibrary: com.oracle.svm.core.posix.linux.libc.GLibC
WARNING: Could not register reflection metadata for org.springframework.boot.actuate.autoconfigure.cloudfoundry.servlet.CloudFoundryActuatorAutoConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/security/config/annotation/web/configuration/WebSecurityCustomizer.
WARNING: Could not register reflection metadata for org.springframework.boot.actuate.autoconfigure.cloudfoundry.servlet.CloudFoundryActuatorAutoConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/security/config/annotation/web/configuration/WebSecurityCustomizer.
WARNING: Could not register reflection metadata for org.springframework.boot.actuate.autoconfigure.cloudfoundry.servlet.CloudFoundryActuatorAutoConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/security/config/annotation/web/configuration/WebSecurityCustomizer.
WARNING: Could not register reflection metadata for org.springframework.boot.actuate.autoconfigure.cloudfoundry.servlet.CloudFoundryActuatorAutoConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/security/config/annotation/web/configuration/WebSecurityCustomizer.
WARNING: Could not register reflection metadata for org.springframework.boot.actuate.autoconfigure.cloudfoundry.servlet.CloudFoundryActuatorAutoConfiguration. Reason: java.lang.NoClassDefFoundError: org/springframework/security/config/annotation/web/configuration/WebSecurityCustomizer.
[app:64086]     (clinit):   1,434.50 ms,  5.11 GB
# Static libraries:
#   ../../../../../usr/lib/jvm/java-11-graalvm/lib/svm/clibraries/linux-amd64/liblibchelper.a
#   ../../../../../usr/lib/jvm/java-11-graalvm/lib/static/linux-amd64/glibc/libnet.a
#   ../../../../../usr/lib/jvm/java-11-graalvm/lib/static/linux-amd64/glibc/libextnet.a
#   ../../../../../usr/lib/jvm/java-11-graalvm/lib/static/linux-amd64/glibc/libnio.a
#   ../../../../../usr/lib/jvm/java-11-graalvm/lib/static/linux-amd64/glibc/libjava.a
#   ../../../../../usr/lib/jvm/java-11-graalvm/lib/static/linux-amd64/glibc/libfdlibm.a
#   ../../../../../usr/lib/jvm/java-11-graalvm/lib/static/linux-amd64/glibc/libsunec.a
#   ../../../../../usr/lib/jvm/java-11-graalvm/lib/static/linux-amd64/glibc/libzip.a
#   ../../../../../usr/lib/jvm/java-11-graalvm/lib/svm/clibraries/linux-amd64/libjvm.a
# Other libraries: stdc++,pthread,dl,z,rt
[app:64086]   (typeflow):  25,213.81 ms,  5.11 GB
[app:64086]    (objects):  36,756.38 ms,  5.11 GB
[app:64086]   (features):   3,807.48 ms,  5.11 GB
[app:64086]     analysis:  69,576.60 ms,  5.11 GB
[app:64086]     universe:   3,195.95 ms,  5.11 GB
[app:64086]      (parse):   7,438.31 ms,  5.14 GB
[app:64086]     (inline):   9,453.33 ms,  6.10 GB
[app:64086]    (compile):  46,705.62 ms,  5.96 GB
[app:64086]      compile:  67,372.42 ms,  5.96 GB
[app:64086]        image:   7,932.53 ms,  6.02 GB
[app:64086]        write:   1,000.56 ms,  6.02 GB
[app:64086]      [total]: 157,840.65 ms,  6.02 GB
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  02:40 min
[INFO] Finished at: 2021-02-21T00:53:31Z
[INFO] ------------------------------------------------------------------------

Process finished with exit code 0

Run

$ ./target/app 

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::                (v2.4.3)

2021-02-21 00:45:34.703  INFO 61939 --- [           main] pt.ist.photon_graal.App                  : Starting App using Java 11.0.10 on david-ms7a38 with PID 61939 (/home/david/projects/FaaS-GraalVM/target/app started by david in /home/david/projects/FaaS-GraalVM)
2021-02-21 00:45:34.703  INFO 61939 --- [           main] pt.ist.photon_graal.App                  : No active profile set, falling back to default profiles: default
2021-02-21 00:45:34.754  INFO 61939 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8080 (http)
Feb 21, 2021 12:45:34 AM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["http-nio-8080"]
Feb 21, 2021 12:45:34 AM org.apache.catalina.core.StandardService startInternal
INFO: Starting service [Tomcat]
Feb 21, 2021 12:45:34 AM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet engine: [Apache Tomcat/9.0.43]
Feb 21, 2021 12:45:34 AM org.apache.catalina.core.ApplicationContext log
INFO: Initializing Spring embedded WebApplicationContext
2021-02-21 00:45:34.755  INFO 61939 --- [           main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 52 ms
2021-02-21 00:45:34.758  WARN 61939 --- [           main] i.m.c.i.binder.jvm.JvmGcMetrics          : GC notifications will not be available because MemoryPoolMXBeans are not provided by the JVM
2021-02-21 00:45:34.765  WARN 61939 --- [           main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'timedAspect' defined in pt.ist.photon_graal.App: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.micrometer.core.aop.TimedAspect]: Factory method 'timedAspect' threw exception; nested exception is java.lang.NoSuchMethodError: java.lang.invoke.MethodHandle.apply()
Feb 21, 2021 12:45:34 AM org.apache.catalina.core.StandardService stopInternal
INFO: Stopping service [Tomcat]
2021-02-21 00:45:34.766  INFO 61939 --- [           main] ConditionEvaluationReportLoggingListener : 

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2021-02-21 00:45:34.766 ERROR 61939 --- [           main] o.s.boot.SpringApplication               : Application run failed

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'timedAspect' defined in pt.ist.photon_graal.App: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.micrometer.core.aop.TimedAspect]: Factory method 'timedAspect' threw exception; nested exception is java.lang.NoSuchMethodError: java.lang.invoke.MethodHandle.apply()
        at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658) ~[na:na]
        at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:638) ~[na:na]
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1334) ~[na:na]
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1177) ~[na:na]
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:564) ~[na:na]
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:524) ~[na:na]
        at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[na:na]
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[na:na]
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[na:na]
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[na:na]
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:944) ~[na:na]
        at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:917) ~[na:na]
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:582) ~[na:na]
        at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:144) ~[na:na]
        at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:767) ~[app:2.4.3]
        at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759) ~[app:2.4.3]
        at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:426) ~[app:2.4.3]
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:326) ~[app:2.4.3]
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1311) ~[app:2.4.3]
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1300) ~[app:2.4.3]
        at pt.ist.photon_graal.App.main(App.java:12) ~[app:na]
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.micrometer.core.aop.TimedAspect]: Factory method 'timedAspect' threw exception; nested exception is java.lang.NoSuchMethodError: java.lang.invoke.MethodHandle.apply()
        at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185) ~[na:na]
        at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653) ~[na:na]
        ... 20 common frames omitted
Caused by: java.lang.NoSuchMethodError: java.lang.invoke.MethodHandle.apply()
        at io.micrometer.core.aop.TimedAspect.<init>(TimedAspect.java:73) ~[app:1.6.4]
        at pt.ist.photon_graal.App.timedAspect(App.java:17) ~[app:na]
        at java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
        at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) ~[na:na]
        ... 21 common frames omitted
davidfrickert commented 3 years ago

Update: Ended up trying the "agent" to auto generate reflection file and it is now working, sorry for the pollution.

    mvn package spring-boot:repackage
    cd target
    mkdir -p META-INF/native-image
    java -agentlib:native-image-agent=config-output-dir=META-INF/native-image -jar GraalVMTest-1.0-SNAPSHOT.jar
    # exercise a bit your app...
    # then profit with output config files.