Skip to content

[Native Image] native-image compilation crashes with GraalGraphError after upgrading from GraalVM 21 to 25. #12694

@sebthom

Description

@sebthom

Describe the Issue

When upgrading from GraalVM 23 to 24 or 25. Native Image builds suddenly crash.

Compilation worked fine with GraalVM 21 and 23.

See build failure with GraalVM 25: https://github.com/vegardit/copycat/actions/runs/20108606702
See build failure with GraalVM Dev: https://github.com/vegardit/copycat/actions/runs/20109970053

Using the latest version of GraalVM can resolve many issues.

GraalVM Version

openjdk 25.0.1 2025-10-21
OpenJDK Runtime Environment GraalVM CE 25.0.1+8.1 (build 25.0.1+8-jvmci-b01)
OpenJDK 64-Bit Server VM GraalVM CE 25.0.1+8.1 (build 25.0.1+8-jvmci-b01, mixed mode, sharing)


openjdk 25.0.1 2025-10-21
OpenJDK Runtime Environment GraalVM CE 25.1.0-dev+8.1 (build 25.0.1+8-jvmci-25.1-b12)
OpenJDK 64-Bit Server VM GraalVM CE 25.1.0-dev+8.1 (build 25.0.1+8-jvmci-25.1-b12, mixed mode, sharing)

Operating System and Version

Windows 10, 11 (x86), MacOS 15 (x86 & ARM), Ubuntu 24.04 (x86 & ARM)

Build Command

native-image \
  -H:NativeLinkerOption=-no-pie \
  -H:ReflectionConfigurationFiles=picocli-reflections.json \
  -H:Log=registerResource:3 \
  -H:+ReportExceptionStackTraces \
  -H:+RemoveUnusedSymbols \
  -H:ExcludeResources=com/sun/.*.properties  \
  --exclude-config copycat-fat.jar META-INF/native-image/net.sf.jstuff/.*.json  \
  --allow-incomplete-classpath  \
  --no-fallback  \
  --no-server  \
  --verbose \
  -Dfile.encoding=UTF-8 \
  --class-path native-image-metadata \
  --class-path copycat-fat.jar \
  com.vegardit.copycat.CopyCatMain copycat-linux-amd64

Expected Behavior

native image is produced on all platforms. the build does not fail.

Actual Behavior

The native image build crashes with:

 jdk.graal.compiler.graph.GraalGraphError: unexpected non-null predecessor in new successor (587|MonitorExit): 586|Begin, this=582|LoopExit
	at [587|MonitorExit { nodeSourcePosition=at com.sun.jna.internal.Cleaner$CleanerThread.run(Cleaner.java:176) [bci: 180], stamp=void, biasable=true,  }, 586|Begin { nodeSourcePosition=at com.sun.jna.internal.Cleaner$CleanerThread.run(Cleaner.java:176) [bci: 180], stamp=void, hasSpeculationFence=false,  }, 582|LoopExit { nodeSourcePosition=at com.sun.jna.internal.Cleaner$CleanerThread.run(Cleaner.java:176) [bci: 180], stamp=void, hasSpeculationFence=false,  }]
	at node: 582|LoopExit { nodeSourcePosition=at com.sun.jna.internal.Cleaner$CleanerThread.run(Cleaner.java:176) [bci: 180], stamp=void, hasSpeculationFence=false,  }
	at jdk.graal.compiler/jdk.graal.compiler.graph.Node.fail(Node.java:1648)
	at jdk.graal.compiler/jdk.graal.compiler.graph.Node.assertTrue(Node.java:1635)
	at jdk.graal.compiler/jdk.graal.compiler.graph.Node.updatePredecessor(Node.java:820)
	at jdk.graal.compiler/jdk.graal.compiler.graph.Node.replaceAtPredecessor(Node.java:1294)
	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.phases.SharedGraphBuilderPhase$SharedBytecodeParser.checkUnstructuredLocking(SharedGraphBuilderPhase.java:1101)
	at jdk.graal.compiler/jdk.graal.compiler.java.BytecodeParser.createTarget(BytecodeParser.java:3549)
	at jdk.graal.compiler/jdk.graal.compiler.java.BytecodeParser.createTarget(BytecodeParser.java:3429)
	at jdk.graal.compiler/jdk.graal.compiler.java.BytecodeParser.createExceptionDispatch(BytecodeParser.java:3745)
	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.phases.SharedGraphBuilderPhase$SharedBytecodeParser.createExceptionDispatch(SharedGraphBuilderPhase.java:1251)
	at jdk.graal.compiler/jdk.graal.compiler.java.BytecodeParser.processBlock(BytecodeParser.java:3650)
	at jdk.graal.compiler/jdk.graal.compiler.java.BytecodeParser.build(BytecodeParser.java:1193)
	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.phases.SharedGraphBuilderPhase$SharedBytecodeParser.build(SharedGraphBuilderPhase.java:245)
	at jdk.graal.compiler/jdk.graal.compiler.java.BytecodeParser.buildRootMethod(BytecodeParser.java:1076)
	at jdk.graal.compiler/jdk.graal.compiler.java.GraphBuilderPhase$Instance.run(GraphBuilderPhase.java:103)
	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.phases.SharedGraphBuilderPhase.run(SharedGraphBuilderPhase.java:175)
	at jdk.graal.compiler/jdk.graal.compiler.phases.Phase.run(Phase.java:49)
	at jdk.graal.compiler/jdk.graal.compiler.phases.BasePhase.apply(BasePhase.java:468)
	at jdk.graal.compiler/jdk.graal.compiler.phases.Phase.apply(Phase.java:42)
	at jdk.graal.compiler/jdk.graal.compiler.phases.Phase.apply(Phase.java:38)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.AnalysisParsedGraph.parseBytecodeForStage(AnalysisParsedGraph.java:210)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.AnalysisParsedGraph.createFinalStage(AnalysisParsedGraph.java:243)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.meta.AnalysisMethod.lambda$static$2(AnalysisMethod.java:1204)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.meta.AnalysisMethod.setGraph(AnalysisMethod.java:1273)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.meta.AnalysisMethod.createAnalysisParsedGraph(AnalysisMethod.java:1256)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.meta.AnalysisMethod.ensureGraphParsedHelper(AnalysisMethod.java:1162)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.meta.AnalysisMethod.ensureGraphParsed(AnalysisMethod.java:1023)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.meta.AnalysisMethod.ensureGraphParsed(AnalysisMethod.java:1015)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlowBuilder.parse(MethodTypeFlowBuilder.java:231)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlowBuilder.apply(MethodTypeFlowBuilder.java:739)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlow.createFlowsGraph(MethodTypeFlow.java:166)
	... 25 more

Steps to Reproduce

  1. Fork the repo https://github.com/vegardit/copycat/
  2. Try to execute the https://github.com/vegardit/copycat/actions/workflows/build.yml workflow on branch graalvm-25 in the forked repo

Additional Context

No response

Build Log Output and Error Messages

Using built-in specs.
COLLECT_GCC=/usr/bin/gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 13.3.0-6ubuntu2~24.04' --with-bugurl=file:///usr/share/doc/gcc-13/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-13 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-libstdcxx-backtrace --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-13-fG75Ri/gcc-13-13.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04) 
Warning: Using a deprecated option --report-unsupported-elements-at-runtime from command line. The option is deprecated and will be removed in the future. The use of unsupported elements is always reported at run time.
Warning: Using a deprecated option --allow-incomplete-classpath from command line. Allowing an incomplete classpath is now the default. Use --link-at-build-time to report linking errors at image build time for a class or package.
Warning: Ignoring server-mode native-image argument --no-server.
Apply file:///home/runner/work/copycat/copycat/native-image-metadata/META-INF/native-image/reachability-metadata.json
Apply jar:file:///home/runner/work/copycat/copycat/copycat-fat.jar!/META-INF/native-image/com.vegardit/copycat/resource-config.json
Warning: The option '-H:ReflectionConfigurationFiles=picocli-reflections.json' is experimental and must be enabled via '-H:+UnlockExperimentalVMOptions' in the future.
Warning: The option '-H:ExcludeResources=com/sun/.*.properties' is experimental and must be enabled via '-H:+UnlockExperimentalVMOptions' in the future.
Warning: The option '-H:+RemoveUnusedSymbols' is experimental and must be enabled via '-H:+UnlockExperimentalVMOptions' in the future.
Warning: The option '-H:Log=registerResource:3' is experimental and must be enabled via '-H:+UnlockExperimentalVMOptions' in the future.
Warning: The option '-H:+StaticExecutableWithDynamicLibC' is experimental and must be enabled via '-H:+UnlockExperimentalVMOptions' in the future.
Warning: Please re-evaluate whether any experimental option is required, and either remove or unlock it. The build output lists all active experimental options, including where they come from and possible alternatives. If you think an experimental option should be considered as stable, please file an issue.
Apply jar:file:///opt/hostedtoolcache/graalvm-community-jdk-25.0.1_linux-x64_bin/25.0.1/x64/graalvm-community-openjdk-25.0.1+8.1/lib/svm/library-support.jar!/META-INF/native-image/com.oracle.svm/thirdparty/native-image.properties
Apply jar:file:///opt/hostedtoolcache/graalvm-community-jdk-25.0.1_linux-x64_bin/25.0.1/x64/graalvm-community-openjdk-25.0.1+8.1/lib/svm/library-support.jar!/META-INF/native-image/com.oracle.svm/polyglot/native-image.properties
Executing [
DRIVER_TEMP_DIR_ENV_VARIABLE=/tmp/driverRoot-14955862514085048780 \
HOME=/home/runner \
LANG=C.UTF-8 \
PATH=/opt/hostedtoolcache/graalvm-community-jdk-25.0.1_linux-x64_bin/25.0.1/x64/graalvm-community-openjdk-25.0.1+8.1/bin:/snap/bin:/home/runner/.local/bin:/opt/pipx_bin:/home/runner/.cargo/bin:/home/runner/.config/composer/vendor/bin:/usr/local/.ghcup/bin:/home/runner/.dotnet/tools:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin \
*** \
USE_NATIVE_IMAGE_JAVA_PLATFORM_MODULE_SYSTEM=true \
/opt/hostedtoolcache/graalvm-community-jdk-25.0.1_linux-x64_bin/25.0.1/x64/graalvm-community-openjdk-25.0.1+8.1/bin/java \
-XX:+UnlockExperimentalVMOptions \
-XX:+EnableJVMCI \
-Dtruffle.TrustAllTruffleRuntimeProviders=true \
-Dtruffle.TruffleRuntime=com.oracle.truffle.api.impl.DefaultTruffleRuntime \
-Dgraalvm.ForcePolyglotInvalid=true \
-Dgraalvm.locatorDisabled=true \
-Dsubstratevm.HostLibC=glibc \
--add-exports=java.base/com.sun.crypto.provider=org.graalvm.nativeimage.builder \
--add-exports=java.base/jdk.internal.access=org.graalvm.nativeimage.builder \
--add-exports=java.base/jdk.internal.event=org.graalvm.nativeimage.builder \
--add-exports=java.base/jdk.internal.foreign=org.graalvm.nativeimage.builder \
--add-exports=java.base/jdk.internal.loader=org.graalvm.nativeimage.builder \
--add-exports=java.base/jdk.internal.logger=org.graalvm.nativeimage.builder \
--add-exports=java.base/jdk.internal.misc=jdk.graal.compiler,org.graalvm.nativeimage.builder,org.graalvm.nativeimage.objectfile,org.graalvm.nativeimage.pointsto \
--add-exports=java.base/jdk.internal.module=org.graalvm.nativeimage.base,org.graalvm.nativeimage.builder \
--add-exports=java.base/jdk.internal.perf=org.graalvm.nativeimage.builder \
--add-exports=java.base/jdk.internal.platform=org.graalvm.nativeimage.builder \
--add-exports=java.base/jdk.internal.ref=org.graalvm.nativeimage.builder,org.graalvm.nativeimage.objectfile \
--add-exports=java.base/jdk.internal.reflect=org.graalvm.nativeimage.builder \
--add-exports=java.base/jdk.internal.util=org.graalvm.nativeimage.builder \
--add-exports=java.base/jdk.internal.vm.annotation=org.graalvm.nativeimage.builder \
--add-exports=java.base/jdk.internal.vm=org.graalvm.nativeimage.builder \
--add-exports=java.base/jdk.internal=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.invoke.util=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.net.www=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.net=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.nio.ch=org.graalvm.nativeimage.builder,org.graalvm.nativeimage.objectfile \
--add-exports=java.base/sun.reflect.annotation=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.reflect.generics.factory=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.reflect.generics.reflectiveObjects=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.reflect.generics.repository=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.reflect.generics.scope=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.reflect.generics.tree=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.security.jca=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.security.provider=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.security.rsa=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.security.ssl=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.security.util=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.security.x509=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.text.spi=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.util.calendar=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.util.cldr=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.util.locale.provider=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.util.locale=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.util.resources=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.util=org.graalvm.nativeimage.builder \
--add-exports=java.management/com.sun.jmx.mbeanserver=org.graalvm.nativeimage.builder \
--add-exports=java.management/sun.management=org.graalvm.nativeimage.builder,org.graalvm.nativeimage.pointsto \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.aarch64=jdk.graal.compiler,org.graalvm.nativeimage.builder,org.graalvm.nativeimage.objectfile \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.amd64=jdk.graal.compiler,org.graalvm.nativeimage.builder,org.graalvm.nativeimage.objectfile \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.code.site=jdk.graal.compiler,org.graalvm.nativeimage.builder \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.code.stack=jdk.graal.compiler,org.graalvm.nativeimage.builder \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.code=jdk.graal.compiler,org.graalvm.nativeimage.builder,org.graalvm.nativeimage.objectfile,org.graalvm.nativeimage.pointsto,org.graalvm.truffle.compiler \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.common=jdk.graal.compiler,org.graalvm.nativeimage.builder,org.graalvm.nativeimage.pointsto \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.hotspot.aarch64=jdk.graal.compiler \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.hotspot.amd64=jdk.graal.compiler \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.hotspot.riscv64=jdk.graal.compiler \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.hotspot=jdk.graal.compiler,org.graalvm.nativeimage.builder \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.meta=jdk.graal.compiler,org.graalvm.nativeimage.base,org.graalvm.nativeimage.builder,org.graalvm.nativeimage.configure,org.graalvm.nativeimage.objectfile,org.graalvm.nativeimage.pointsto,org.graalvm.truffle.compiler \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.riscv64=jdk.graal.compiler,org.graalvm.nativeimage.builder \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.runtime=jdk.graal.compiler,org.graalvm.nativeimage.builder,org.graalvm.nativeimage.pointsto \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.services=jdk.graal.compiler,org.graalvm.nativeimage.builder \
--add-exports=jdk.jfr/jdk.jfr.events=org.graalvm.nativeimage.builder \
--add-exports=jdk.jfr/jdk.jfr.internal.event=org.graalvm.nativeimage.builder \
--add-exports=jdk.jfr/jdk.jfr.internal.jfc=org.graalvm.nativeimage.builder \
--add-exports=jdk.jfr/jdk.jfr.internal=org.graalvm.nativeimage.builder \
--add-exports=jdk.management/com.sun.management.internal=org.graalvm.nativeimage.builder \
-XX:+UseJVMCINativeLibrary \
-Xss10m \
-XX:+UseParallelGC \
-XX:MaxRAMPercentage=85.0 \
'-Dsvm.build.memoryUsageReasonText=$CI set to '"'"'true'"'"'' \
-XX:GCTimeRatio=9 \
-XX:+ExitOnOutOfMemoryError \
-Djava.awt.headless=true \
'-Dorg.graalvm.vendor=GraalVM Community' \
-Dorg.graalvm.vendorurl=https://www.graalvm.org/ \
'-Dorg.graalvm.vendorversion=GraalVM CE 25.0.1+8.1' \
-Dorg.graalvm.version=25.0.1 \
-Dcom.oracle.graalvm.isaot=true \
-Djava.system.class.loader=com.oracle.svm.hosted.NativeImageSystemClassLoader \
-Dorg.graalvm.nativeimage.imagecode=buildtime \
-Xshare:off \
-Djdk.internal.lambda.disableEagerInitialization=true \
-Djdk.internal.lambda.eagerlyInitialize=false \
-Djava.lang.invoke.InnerClassLambdaMetafactory.initializeLambdas=false \
-Djava.lang.invoke.MethodHandle.DONT_INLINE_THRESHOLD=-1 \
-Djava.lang.invoke.MethodHandle.PROFILE_GWT=false \
-Dfile.encoding=UTF-8 \
--add-modules=ALL-DEFAULT \
--enable-native-access=org.graalvm.nativeimage.configure,org.graalvm.nativeimage.builder,org.graalvm.nativeimage.base,org.graalvm.nativeimage.shaded.capnproto,org.graalvm.espresso.shared.svm,org.graalvm.nativeimage.objectfile,org.graalvm.nativeimage.foreign,org.graalvm.nativeimage.pointsto \
--module-path \
/opt/hostedtoolcache/graalvm-community-jdk-25.0.1_linux-x64_bin/25.0.1/x64/graalvm-community-openjdk-25.0.1+8.1/lib/svm/builder/svm-capnproto-runtime.jar:/opt/hostedtoolcache/graalvm-community-jdk-25.0.1_linux-x64_bin/25.0.1/x64/graalvm-community-openjdk-25.0.1+8.1/lib/svm/builder/objectfile.jar:/opt/hostedtoolcache/graalvm-community-jdk-25.0.1_linux-x64_bin/25.0.1/x64/graalvm-community-openjdk-25.0.1+8.1/lib/svm/builder/native-image-base.jar:/opt/hostedtoolcache/graalvm-community-jdk-25.0.1_linux-x64_bin/25.0.1/x64/graalvm-community-openjdk-25.0.1+8.1/lib/svm/builder/pointsto.jar:/opt/hostedtoolcache/graalvm-community-jdk-25.0.1_linux-x64_bin/25.0.1/x64/graalvm-community-openjdk-25.0.1+8.1/lib/svm/builder/svm-configure.jar:/opt/hostedtoolcache/graalvm-community-jdk-25.0.1_linux-x64_bin/25.0.1/x64/graalvm-community-openjdk-25.0.1+8.1/lib/svm/builder/espresso-svm.jar:/opt/hostedtoolcache/graalvm-community-jdk-25.0.1_linux-x64_bin/25.0.1/x64/graalvm-community-openjdk-25.0.1+8.1/lib/svm/builder/svm.jar:/opt/hostedtoolcache/graalvm-community-jdk-25.0.1_linux-x64_bin/25.0.1/x64/graalvm-community-openjdk-25.0.1+8.1/lib/svm/builder/svm-foreign.jar \
-Dsvm.modulesupport.addedModules=java.rmi,java.sql,org.graalvm.collections,jdk.jdi,java.logging,java.transaction.xa,java.xml.crypto,java.xml,jdk.jfr,jdk.internal.vm.ci,java.datatransfer,org.graalvm.truffle.compiler,jdk.internal.md,java.desktop,java.naming,jdk.internal.ed,java.prefs,java.net.http,jdk.compiler,java.security.sasl,jdk.internal.opt,org.graalvm.nativeimage,jdk.zipfs,jdk.attach,java.base,jdk.management.agent,org.graalvm.word,jdk.internal.le,java.management,java.sql.rowset,jdk.unsupported,jdk.jlink,jdk.jdwp.agent,jdk.internal.jvmstat,java.instrument,java.security.jgss,jdk.management,java.compiler,java.scripting,jdk.graal.compiler,jdk.jdeps,java.management.rmi \
--add-modules=java.rmi,java.sql,org.graalvm.collections,jdk.jdi,java.logging,java.transaction.xa,java.xml.crypto,java.xml,jdk.jfr,jdk.internal.vm.ci,java.datatransfer,org.graalvm.truffle.compiler,jdk.internal.md,java.desktop,java.naming,jdk.internal.ed,java.prefs,java.net.http,jdk.compiler,java.security.sasl,jdk.internal.opt,org.graalvm.nativeimage,jdk.zipfs,jdk.attach,java.base,jdk.management.agent,org.graalvm.word,jdk.internal.le,java.management,java.sql.rowset,jdk.unsupported,jdk.jlink,jdk.jdwp.agent,jdk.internal.jvmstat,java.instrument,java.security.jgss,jdk.management,java.compiler,java.scripting,jdk.graal.compiler,jdk.jdeps,java.management.rmi \
--module \
org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGeneratorRunner \
-keepalive \
/proc/2212/comm \
-imagecp \
/home/runner/work/copycat/copycat/native-image-metadata:/home/runner/work/copycat/copycat/copycat-fat.jar \
-imagemp \
/opt/hostedtoolcache/graalvm-community-jdk-25.0.1_linux-x64_bin/25.0.1/x64/graalvm-community-openjdk-25.0.1+8.1/lib/svm/library-support.jar \
-H:CLibraryPath=/opt/hostedtoolcache/graalvm-community-jdk-25.0.1_linux-x64_bin/25.0.1/x64/graalvm-community-openjdk-25.0.1+8.1/lib/svm/clibraries/linux-amd64/glibc,/opt/hostedtoolcache/graalvm-community-jdk-25.0.1_linux-x64_bin/25.0.1/x64/graalvm-community-openjdk-25.0.1+8.1/lib/svm/clibraries/linux-amd64,/opt/hostedtoolcache/graalvm-community-jdk-25.0.1_linux-x64_bin/25.0.1/x64/graalvm-community-openjdk-25.0.1+8.1/lib/svm/clibraries \
-H:Path@driver=/home/runner/work/copycat/copycat \
-H:+StaticExecutableWithDynamicLibC@user \
-H:+ReportUnsupportedElementsAtRuntime@user+api \
-H:NativeLinkerOption@user=-no-pie \
-H:ReflectionConfigurationFiles@user=/home/runner/work/copycat/copycat/picocli-reflections.json \
-H:Log@user=registerResource:3 \
-H:+ReportExceptionStackTraces@user \
-H:+RemoveUnusedSymbols@user \
'-H:ExcludeResources@user=com/sun/.*.properties' \
-H:+AllowIncompleteClasspath@user+api \
-H:FallbackThreshold@user+api=0 \
-H:ReachabilityMetadataResources@file:///home/runner/work/copycat/copycat/native-image-metadata/META-INF/native-image/reachability-metadata.json+api=META-INF/native-image/reachability-metadata.json \
'-H:ResourceConfigurationResources@jar:file:///home/runner/work/copycat/copycat/copycat-fat.jar!/META-INF/native-image/com.vegardit/copycat/resource-config.json+api=META-INF/native-image/com.vegardit/copycat/resource-config.json' \
'-H:Class@explicit main-class=com.vegardit.copycat.CopyCatMain' \
'-H:Name@explicit image name=copycat-linux-amd64' \
-H:ImageBuildID@driver=99783aa8-96f5-746f-d26d-7a94831b6e31 \
'-H:Features@jar:file:///opt/hostedtoolcache/graalvm-community-jdk-25.0.1_linux-x64_bin/25.0.1/x64/graalvm-community-openjdk-25.0.1+8.1/lib/svm/library-support.jar!/META-INF/native-image/com.oracle.svm/thirdparty/native-image.properties+api=com.oracle.svm.thirdparty.gson.GsonFeature' \
'-H:Features@jar:file:///opt/hostedtoolcache/graalvm-community-jdk-25.0.1_linux-x64_bin/25.0.1/x64/graalvm-community-openjdk-25.0.1+8.1/lib/svm/library-support.jar!/META-INF/native-image/com.oracle.svm/polyglot/native-image.properties+api=com.oracle.svm.polyglot.groovy.GroovyIndyInterfaceFeature,com.oracle.svm.polyglot.scala.ScalaFeature'
]
========================================================================================================================
GraalVM Native Image: Generating 'copycat-linux-amd64' (executable)...
========================================================================================================================
For detailed information and explanations on the build output, visit:
https://github.com/oracle/graal/blob/master/docs/reference-manual/native-image/BuildOutput.md
------------------------------------------------------------------------------------------------------------------------
[1/8] Initializing...                                                                                    (5.3s @ 0.14GB)
 Java version: 25.0.1+8, vendor version: GraalVM CE 25.0.1+8.1
 Graal compiler: optimization level: 2, target machine: x86-64-v3
 C compiler: gcc (linux, x86_64, 13.3.0)
 Garbage collector: Serial GC (max heap size: 80% of RAM)
 1 user-specific feature(s):
 - com.oracle.svm.thirdparty.gson.GsonFeature
------------------------------------------------------------------------------------------------------------------------
 5 experimental option(s) unlocked:
 - '-H:ExcludeResources' (origin(s): command line)
 - '-H:+StaticExecutableWithDynamicLibC' (alternative API option(s): --static-nolibc; origin(s): command line)
 - '-H:ReflectionConfigurationFiles': Use a reflect-config.json in your META-INF/native-image/<groupID>/<artifactID> directory instead. (origin(s): command line)
 - '-H:Log' (origin(s): command line)
 - '-H:+RemoveUnusedSymbols' (origin(s): command line)
------------------------------------------------------------------------------------------------------------------------
Build resources:
 - 12.67GB of memory (75.6% of system memory, $CI set to 'true')
 - 4 thread(s) (100.0% of 4 available processor(s), determined at start)
[Use -Djdk.graal.LogFile=<path> to redirect Graal log output to a file.]
[thread:3] scope: main
  [thread:3] scope: main.ClosedWorldAnalysis
  Context: StructuredGraph:45368{AnalysisMethod<Cleaner$CleanerThread.run -> HotSpotMethod<Cleaner$CleanerThread.run()>, invoked: false, implInvoked: false, intrinsic: false, inlined: false>}
  Context: AnalysisMethod<Cleaner$CleanerThread.run -> HotSpotMethod<Cleaner$CleanerThread.run()>, invoked: false, implInvoked: false, intrinsic: false, inlined: false>
    [thread:3] scope: main.ClosedWorldAnalysis.AnalysisGraphBuilderPhase
    Exception raised in scope main.ClosedWorldAnalysis.AnalysisGraphBuilderPhase: jdk.graal.compiler.graph.GraalGraphError: unexpected non-null predecessor in new successor (587|MonitorExit): 586|Begin, this=582|LoopExit
    	at [587|MonitorExit { nodeSourcePosition=at com.sun.jna.internal.Cleaner$CleanerThread.run(Cleaner.java:176) [bci: 180], stamp=void, biasable=true,  }, 586|Begin { nodeSourcePosition=at com.sun.jna.internal.Cleaner$CleanerThread.run(Cleaner.java:176) [bci: 180], stamp=void, hasSpeculationFence=false,  }, 582|LoopExit { nodeSourcePosition=at com.sun.jna.internal.Cleaner$CleanerThread.run(Cleaner.java:176) [bci: 180], stamp=void, hasSpeculationFence=false,  }]
    	at node: 582|LoopExit { nodeSourcePosition=at com.sun.jna.internal.Cleaner$CleanerThread.run(Cleaner.java:176) [bci: 180], stamp=void, hasSpeculationFence=false,  }
    	at jdk.graal.compiler/jdk.graal.compiler.graph.Node.fail(Node.java:1648)
    	at jdk.graal.compiler/jdk.graal.compiler.graph.Node.assertTrue(Node.java:1635)
    	at jdk.graal.compiler/jdk.graal.compiler.graph.Node.updatePredecessor(Node.java:820)
    	at jdk.graal.compiler/jdk.graal.compiler.graph.Node.replaceAtPredecessor(Node.java:1294)
    	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.phases.SharedGraphBuilderPhase$SharedBytecodeParser.checkUnstructuredLocking(SharedGraphBuilderPhase.java:1101)
    	at jdk.graal.compiler/jdk.graal.compiler.java.BytecodeParser.createTarget(BytecodeParser.java:3549)
    	at jdk.graal.compiler/jdk.graal.compiler.java.BytecodeParser.createTarget(BytecodeParser.java:3429)
    	at jdk.graal.compiler/jdk.graal.compiler.java.BytecodeParser.createExceptionDispatch(BytecodeParser.java:3745)
    	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.phases.SharedGraphBuilderPhase$SharedBytecodeParser.createExceptionDispatch(SharedGraphBuilderPhase.java:1251)
    	at jdk.graal.compiler/jdk.graal.compiler.java.BytecodeParser.processBlock(BytecodeParser.java:3650)
    	at jdk.graal.compiler/jdk.graal.compiler.java.BytecodeParser.build(BytecodeParser.java:1193)
    	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.phases.SharedGraphBuilderPhase$SharedBytecodeParser.build(SharedGraphBuilderPhase.java:245)
    	at jdk.graal.compiler/jdk.graal.compiler.java.BytecodeParser.buildRootMethod(BytecodeParser.java:1076)
    	at jdk.graal.compiler/jdk.graal.compiler.java.GraphBuilderPhase$Instance.run(GraphBuilderPhase.java:103)
    	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.phases.SharedGraphBuilderPhase.run(SharedGraphBuilderPhase.java:175)
    	at jdk.graal.compiler/jdk.graal.compiler.phases.Phase.run(Phase.java:49)
    	at jdk.graal.compiler/jdk.graal.compiler.phases.BasePhase.apply(BasePhase.java:468)
    	at jdk.graal.compiler/jdk.graal.compiler.phases.Phase.apply(Phase.java:42)
    	at jdk.graal.compiler/jdk.graal.compiler.phases.Phase.apply(Phase.java:38)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.AnalysisParsedGraph.parseBytecodeForStage(AnalysisParsedGraph.java:210)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.AnalysisParsedGraph.createFinalStage(AnalysisParsedGraph.java:243)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.meta.AnalysisMethod.lambda$static$2(AnalysisMethod.java:1204)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.meta.AnalysisMethod.setGraph(AnalysisMethod.java:1273)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.meta.AnalysisMethod.createAnalysisParsedGraph(AnalysisMethod.java:1256)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.meta.AnalysisMethod.ensureGraphParsedHelper(AnalysisMethod.java:1162)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.meta.AnalysisMethod.ensureGraphParsed(AnalysisMethod.java:1023)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.meta.AnalysisMethod.ensureGraphParsed(AnalysisMethod.java:1015)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlowBuilder.parse(MethodTypeFlowBuilder.java:231)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlowBuilder.apply(MethodTypeFlowBuilder.java:739)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlow.createFlowsGraph(MethodTypeFlow.java:166)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlow.ensureFlowsGraphCreated(MethodTypeFlow.java:151)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlow.getOrCreateMethodFlowsGraphInfo(MethodTypeFlow.java:109)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.typestate.DefaultVirtualInvokeTypeFlow.onObservedUpdate(DefaultVirtualInvokeTypeFlow.java:119)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.TypeFlow.update(TypeFlow.java:882)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.PointsToAnalysis$1.run(PointsToAnalysis.java:621)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.util.CompletionExecutor.executeCommand(CompletionExecutor.java:166)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.util.CompletionExecutor.lambda$executeService$0(CompletionExecutor.java:152)
    	at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.compute(ForkJoinTask.java:1750)
    	at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.compute(ForkJoinTask.java:1742)
    	at java.base/java.util.concurrent.ForkJoinTask$InterruptibleTask.exec(ForkJoinTask.java:1659)
    	at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:511)
    	at java.base/java.util.concurrent.ForkJoinPool.externalHelpQuiesce(ForkJoinPool.java:2509)
    	at java.base/java.util.concurrent.ForkJoinPool.helpQuiescePool(ForkJoinPool.java:2543)
    	at java.base/java.util.concurrent.ForkJoinPool.awaitQuiescence(ForkJoinPool.java:4159)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.util.CompletionExecutor.complete(CompletionExecutor.java:208)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.PointsToAnalysis.doTypeflow(PointsToAnalysis.java:682)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.PointsToAnalysis.finish(PointsToAnalysis.java:648)
    	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.AbstractAnalysisEngine.runAnalysis(AbstractAnalysisEngine.java:160)
    	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGenerator.runPointsToAnalysis(NativeImageGenerator.java:841)
    	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGenerator.doRun(NativeImageGenerator.java:569)
    	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGenerator.run(NativeImageGenerator.java:534)
    	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGeneratorRunner.buildImage(NativeImageGeneratorRunner.java:548)
    	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGeneratorRunner.build(NativeImageGeneratorRunner.java:761)
    	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGeneratorRunner.start(NativeImageGeneratorRunner.java:163)
    	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGeneratorRunner.main(NativeImageGeneratorRunner.java:111)
    
    Context obj com.oracle.svm.hosted.phases.AnalysisGraphBuilderPhase@763d8dbc
    Context obj StructuredGraph:45368{AnalysisMethod<Cleaner$CleanerThread.run -> HotSpotMethod<Cleaner$CleanerThread.run()>, invoked: false, implInvoked: false, intrinsic: false, inlined: false>}
    Context obj AnalysisMethod<Cleaner$CleanerThread.run -> HotSpotMethod<Cleaner$CleanerThread.run()>, invoked: false, implInvoked: false, intrinsic: false, inlined: false>
[2/8] Performing analysis...  []                                                                        (26.8s @ 0.62GB)
    5,206 types,   6,875 fields, and  23,286 methods found reachable
    1,786 types,     271 fields, and   2,520 methods registered for reflection
        0 downcalls and 0 upcalls registered for foreign access

Fatal error: com.oracle.graal.pointsto.util.AnalysisError$ParsingError: Error encountered while parsing com.sun.jna.internal.Cleaner$CleanerThread.run(Cleaner.java:154) 
Parsing context:
   at java.lang.Shutdown.runHooks(Shutdown.java:130)
   at java.lang.Shutdown.shutdown(Shutdown.java:200)
   at com.oracle.svm.core.JavaMainWrapper.runShutdown0(JavaMainWrapper.java:270)
   at com.oracle.svm.core.JavaMainWrapper.doRun(JavaMainWrapper.java:304)
   at com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_XNhh1mz2Ib2aPR1wdv014D(generated:0)
   at static root method.(Unknown Source)

	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.util.AnalysisError.parsingError(AnalysisError.java:165)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlow.createFlowsGraph(MethodTypeFlow.java:188)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlow.ensureFlowsGraphCreated(MethodTypeFlow.java:151)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlow.getOrCreateMethodFlowsGraphInfo(MethodTypeFlow.java:109)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.typestate.DefaultVirtualInvokeTypeFlow.onObservedUpdate(DefaultVirtualInvokeTypeFlow.java:119)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.TypeFlow.update(TypeFlow.java:882)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.PointsToAnalysis$1.run(PointsToAnalysis.java:621)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.util.CompletionExecutor.executeCommand(CompletionExecutor.java:166)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.util.CompletionExecutor.lambda$executeService$0(CompletionExecutor.java:152)
	at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.compute(ForkJoinTask.java:1750)
	at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.compute(ForkJoinTask.java:1742)
	at java.base/java.util.concurrent.ForkJoinTask$InterruptibleTask.exec(ForkJoinTask.java:1659)
	at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:511)
	at java.base/java.util.concurrent.ForkJoinPool.externalHelpQuiesce(ForkJoinPool.java:2509)
	at java.base/java.util.concurrent.ForkJoinPool.helpQuiescePool(ForkJoinPool.java:2543)
	at java.base/java.util.concurrent.ForkJoinPool.awaitQuiescence(ForkJoinPool.java:4159)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.util.CompletionExecutor.complete(CompletionExecutor.java:208)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.PointsToAnalysis.doTypeflow(PointsToAnalysis.java:682)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.PointsToAnalysis.finish(PointsToAnalysis.java:648)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.AbstractAnalysisEngine.runAnalysis(AbstractAnalysisEngine.java:160)
	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGenerator.runPointsToAnalysis(NativeImageGenerator.java:841)
	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGenerator.doRun(NativeImageGenerator.java:569)
	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGenerator.run(NativeImageGenerator.java:534)
	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGeneratorRunner.buildImage(NativeImageGeneratorRunner.java:548)
	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGeneratorRunner.build(NativeImageGeneratorRunner.java:761)
	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGeneratorRunner.start(NativeImageGeneratorRunner.java:163)
	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGeneratorRunner.main(NativeImageGeneratorRunner.java:111)
Caused by: jdk.graal.compiler.graph.GraalGraphError: unexpected non-null predecessor in new successor (587|MonitorExit): 586|Begin, this=582|LoopExit
	at [587|MonitorExit { nodeSourcePosition=at com.sun.jna.internal.Cleaner$CleanerThread.run(Cleaner.java:176) [bci: 180], stamp=void, biasable=true,  }, 586|Begin { nodeSourcePosition=at com.sun.jna.internal.Cleaner$CleanerThread.run(Cleaner.java:176) [bci: 180], stamp=void, hasSpeculationFence=false,  }, 582|LoopExit { nodeSourcePosition=at com.sun.jna.internal.Cleaner$CleanerThread.run(Cleaner.java:176) [bci: 180], stamp=void, hasSpeculationFence=false,  }]
	at node: 582|LoopExit { nodeSourcePosition=at com.sun.jna.internal.Cleaner$CleanerThread.run(Cleaner.java:176) [bci: 180], stamp=void, hasSpeculationFence=false,  }
	at jdk.graal.compiler/jdk.graal.compiler.graph.Node.fail(Node.java:1648)
	at jdk.graal.compiler/jdk.graal.compiler.graph.Node.assertTrue(Node.java:1635)
	at jdk.graal.compiler/jdk.graal.compiler.graph.Node.updatePredecessor(Node.java:820)
	at jdk.graal.compiler/jdk.graal.compiler.graph.Node.replaceAtPredecessor(Node.java:1294)
	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.phases.SharedGraphBuilderPhase$SharedBytecodeParser.checkUnstructuredLocking(SharedGraphBuilderPhase.java:1101)
	at jdk.graal.compiler/jdk.graal.compiler.java.BytecodeParser.createTarget(BytecodeParser.java:3549)
	at jdk.graal.compiler/jdk.graal.compiler.java.BytecodeParser.createTarget(BytecodeParser.java:3429)
	at jdk.graal.compiler/jdk.graal.compiler.java.BytecodeParser.createExceptionDispatch(BytecodeParser.java:3745)
	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.phases.SharedGraphBuilderPhase$SharedBytecodeParser.createExceptionDispatch(SharedGraphBuilderPhase.java:1251)
	at jdk.graal.compiler/jdk.graal.compiler.java.BytecodeParser.processBlock(BytecodeParser.java:3650)
	at jdk.graal.compiler/jdk.graal.compiler.java.BytecodeParser.build(BytecodeParser.java:1193)
	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.phases.SharedGraphBuilderPhase$SharedBytecodeParser.build(SharedGraphBuilderPhase.java:245)
	at jdk.graal.compiler/jdk.graal.compiler.java.BytecodeParser.buildRootMethod(BytecodeParser.java:1076)
	at jdk.graal.compiler/jdk.graal.compiler.java.GraphBuilderPhase$Instance.run(GraphBuilderPhase.java:103)
	at org.graalvm.nativeimage.builder/com.oracle.svm.hosted.phases.SharedGraphBuilderPhase.run(SharedGraphBuilderPhase.java:175)
	at jdk.graal.compiler/jdk.graal.compiler.phases.Phase.run(Phase.java:49)
	at jdk.graal.compiler/jdk.graal.compiler.phases.BasePhase.apply(BasePhase.java:468)
	at jdk.graal.compiler/jdk.graal.compiler.phases.Phase.apply(Phase.java:42)
	at jdk.graal.compiler/jdk.graal.compiler.phases.Phase.apply(Phase.java:38)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.AnalysisParsedGraph.parseBytecodeForStage(AnalysisParsedGraph.java:210)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.AnalysisParsedGraph.createFinalStage(AnalysisParsedGraph.java:243)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.meta.AnalysisMethod.lambda$static$2(AnalysisMethod.java:1204)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.meta.AnalysisMethod.setGraph(AnalysisMethod.java:1273)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.meta.AnalysisMethod.createAnalysisParsedGraph(AnalysisMethod.java:1256)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.meta.AnalysisMethod.ensureGraphParsedHelper(AnalysisMethod.java:1162)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.meta.AnalysisMethod.ensureGraphParsed(AnalysisMethod.java:1023)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.meta.AnalysisMethod.ensureGraphParsed(AnalysisMethod.java:1015)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlowBuilder.parse(MethodTypeFlowBuilder.java:231)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlowBuilder.apply(MethodTypeFlowBuilder.java:739)
	at org.graalvm.nativeimage.pointsto/com.oracle.graal.pointsto.flow.MethodTypeFlow.createFlowsGraph(MethodTypeFlow.java:166)
	... 25 more
------------------------------------------------------------------------------------------------------------------------
                        1.6s (4.7% of total time) in 285 GCs | Peak RSS: 1.13GB | CPU load: 3.66
========================================================================================================================
Failed generating 'copycat-linux-amd64' after 32.8s.
com.oracle.svm.driver.NativeImage$NativeImageError
	at org.graalvm.nativeimage.driver/com.oracle.svm.driver.NativeImage.showError(NativeImage.java:2514)
	at org.graalvm.nativeimage.driver/com.oracle.svm.driver.NativeImage.build(NativeImage.java:2089)
	at org.graalvm.nativeimage.driver/com.oracle.svm.driver.NativeImage.performBuild(NativeImage.java:2048)
	at org.graalvm.nativeimage.driver/com.oracle.svm.driver.NativeImage.main(NativeImage.java:2030)
	at java.base@25.0.1/java.lang.invoke.LambdaForm$DMH/sa346b79c.invokeStaticInit(LambdaForm$DMH)
Error: Process completed with exit code 1.

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions