Skip to content

[Native Image] -Werror fails for trivial Hello World with DriverWarningsCount=2 but no warnings are printed #14253

Description

@ttldtor

Describe the Issue

With GraalVM 25.2.4, native-image -Werror fails even for a trivial Hello World application.

The Native Image driver passes:

-H:DriverWarningsCount=2

to the image builder, and the build finishes with:

The build process encountered 2 warnings.

Error: Build failed: Warnings are treated as errors because the -Werror flag is set.

However, no Warning: messages are printed during the build, including when --verbose is enabled.

The issue reproduces with both:

  • GraalVM Community Edition 25.2.4+7.1
  • Oracle GraalVM 25.2.4+7.1

It reproduces when invoking native-image directly, without Gradle, Kotlin, Maven, or any third-party dependencies.

Using the latest version of GraalVM can resolve many issues.

GraalVM Version

openjdk version "25.0.4" 2026-07-21
OpenJDK Runtime Environment GraalVM CE 25.2.4+7.1 (build 25.0.4+7-jvmci-25.2-b20)
OpenJDK 64-Bit Server VM GraalVM CE 25.2.4+7.1 (build 25.0.4+7-jvmci-25.2-b20, mixed mode, sharing)

The same behavior was also reproduced with Oracle GraalVM 25.2.4+7.1.

For comparison, Oracle GraalVM 25.0.4+7.1 does not recognize -Werror and does not print the warning-count summary.

Operating System and Version

Microsoft Windows [Version 10.0.26300.9032]

Build Command

javac Hello.java

native-image --verbose -Werror -cp . -o Hello Hello

Expected Behavior

Either:

  1. the build completes successfully if there are no warnings; or
  2. if two warnings actually occur, their messages are printed and -Werror fails the build because of those visible warnings.

For this trivial application, I would expect the former.

Actual Behavior

The image itself is generated successfully, but Native Image reports two warnings only by count and subsequently fails because of -Werror.

The verbose driver invocation contains:

-H:DriverWarningsCount=2

No corresponding Warning: messages are printed before this.

At the end of the build:

Build artifacts:
 C:\w\testGraalDriverWarnings\Hello.exe (executable, 5.00MiB)

Finished generating 'Hello' in 11.0s.

The build process encountered 2 warnings.

Error: Build failed: Warnings are treated as errors because the -Werror flag is set.

Steps to Reproduce

Create Hello.java:

public class Hello {
    public static void main(String[] args) {
        System.out.println("Hello");
    }
}

Compile it:

javac Hello.java

Build the native image:

native-image --verbose -Werror -cp . -o Hello Hello

Observe that:

  1. no Warning: messages are emitted;
  2. the verbose builder invocation contains -H:DriverWarningsCount=2;
  3. the executable is generated;
  4. the command nevertheless exits with an error because -Werror sees two warnings.

Additional Context

The same minimal reproducer produces the same DriverWarningsCount=2 with both GraalVM CE 25.2.4+7.1 and Oracle GraalVM 25.2.4+7.1.

I also tried setting:

NATIVE_IMAGE_EXPERIMENTAL_OPTIONS_ARE_FATAL=true

and running the build without -Werror. The build still completes and reports two warnings, so these do not appear to be illegal experimental-option warnings.

Possibly relevant changes:

  • 9795ca57e60560229004a168f2c28ef532a1fdda
    • "track warnings in Native Image build and list their count at the very end of the build"
  • 6a75f11bfa63e8ccf6c0eaf2e605cd6d8673404f
    • "add option -Werror to fail when a warning occurs"

I am not sure whether the initial value of the warning counter is the root cause, but these changes appear related to the observed behavior.

Build Log Output and Error Messages

Full output from GraalVM CE 25.2.4+7.1
Apply jar:file:///C:/jdk/graalvm-community-25.2.4+7.1/lib/svm/library-support.jar!/META-INF/native-image/com.oracle.svm/thirdparty/native-image.properties
Apply jar:file:///C:/jdk/graalvm-community-25.2.4+7.1/lib/svm/library-support.jar!/META-INF/native-image/com.oracle.svm/polyglot/native-image.properties
Apply jar:file:///C:/jdk/graalvm-community-25.2.4+7.1/lib/svm/svm-guest.jar!/META-INF/native-image/org.graalvm.nativeimage.guest/native-image.properties
Apply jar:file:///C:/jdk/graalvm-community-25.2.4+7.1/lib/svm/svm-guest.jar!/META-INF/native-image/org.graalvm.nativeimage.guest/reachability-metadata.json
Executing [
'DRIVER_TEMP_DIR_ENV_VARIABLE=C:\Users\ttldt\AppData\Local\Temp\driverRoot-15335584733298273173' \
'INCLUDE=C:\Program Files\Microsoft Visual Studio\18\Community\VC\Tools\MSVC\14.51.36231\include;C:\Program Files\Microsoft Visual Studio\18\Community\VC\Tools\MSVC\14.51.36231\ATLMFC\include;C:\Program Files\Microsoft Visual Studio\18\Community\VC\Auxiliary\VS\include;C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\um;C:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\shared;C:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\winrt;C:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\cppwinrt;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um' \
'LIB=C:\Program Files\Microsoft Visual Studio\18\Community\VC\Tools\MSVC\14.51.36231\ATLMFC\lib\x64;C:\Program Files\Microsoft Visual Studio\18\Community\VC\Tools\MSVC\14.51.36231\lib\x64;C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\lib\um\x64;C:\Program Files (x86)\Windows Kits\10\lib\10.0.26100.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\\lib\10.0.26100.0\\um\x64' \
'Path=C:\jdk\graalvm-community-25.2.4+7.1\bin;C:\Program Files\Microsoft Visual Studio\18\Community\VC\Tools\MSVC\14.51.36231\bin\HostX64\x64;C:\Program Files\Microsoft Visual Studio\18\Community\Common7\IDE\VC\VCPackages;C:\Program Files\Microsoft Visual Studio\18\Community\Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files\Microsoft Visual Studio\18\Community\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer;C:\Program Files\Microsoft Visual Studio\18\Community\MSBuild\Current\bin\Roslyn;C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\x64\;C:\Program Files (x86)\HTML Help Workshop;C:\Program Files\Microsoft Visual Studio\18\Community\Common7\IDE\CommonExtensions\Microsoft\FSharp\Tools;C:\Program Files\Microsoft Visual Studio\18\Community\Team Tools\DiagnosticsHub\Collector;C:\Program Files\Microsoft Visual Studio\18\Community\Common7\IDE\Extensions\Microsoft\CodeCoverage.Console;C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\\x64;C:\Program Files (x86)\Windows Kits\10\bin\\x64;C:\Program Files\Microsoft Visual Studio\18\Community\\MSBuild\Current\Bin\amd64;C:\Windows\Microsoft.NET\Framework64\v4.0.30319;C:\Program Files\Microsoft Visual Studio\18\Community\Common7\IDE\;C:\Program Files\Microsoft Visual Studio\18\Community\Common7\Tools\;C:\Program Files\PowerShell\7;C:\Program Files\Microsoft\jdk-25.0.1.8-hotspot\bin;C:\Program Files\CMake\bin;C:\Program Files\OpenSSH\;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.8\bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.8\libnvvp;C:\Program Files\Microsoft\jdk-21.0.4.7-hotspot\bin;C:\Program Files\Common Files\Oracle\Java\javapath;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.3\bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.3\libnvvp;C:\Program Files\Microsoft\jdk-17.0.10.7-hotspot\bin;C:\Program Files\Python311\Scripts\;C:\Program Files\Python311\;C:\Program Files (x86)\Intel\oneAPI\tbb\latest\redist\intel64\vc_mt\;C:\Program Files (x86)\Intel\oneAPI\tbb\latest\redist\ia32\vc_mt\;C:\bin;C:\Program Files (x86)\GnuPG\bin;C:\Windows;C:\Windows\System32;C:\Program Files\Microsoft VS Code\bin;C:\Program Files\dotnet\;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\;C:\Program Files\doxygen\bin;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\7-Zip;C:\D\dmd2\windows\bin64;C:\D\dmd2\windows\bin;C:\bin\NASM;C:\bin\ccache-4.9.1-windows-x86_64;C:\Program Files\Neovim\bin;C:\Program Files\GitHub CLI\;C:\Program Files\Go\bin;C:\Program Files\Git\cmd;C:\Strawberry\perl\site\bin;C:\Strawberry\perl\bin;C:\Program Files\Microsoft SQL Server\150\Tools\Binn\;C:\Program Files\NVIDIA Corporation\NVIDIA app\NvDLISR;C:\Program Files\Tesseract-OCR;C:\Program Files\Zero Install;C:\Program Files\NVIDIA Corporation\Nsight Compute 2025.1.1\;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Program Files\PowerShell\7-preview\preview;C:\Program Files\Meson\;C:\Program Files\scala-cli-x86_64-pc-win32\;C:\Program Files\xmake;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\Microsoft SQL Server\170\Tools\Binn\;C:\Program Files\RedHat\Podman\;C:\Program Files\Rancher Desktop\resources\resources\win32\bin\;C:\Program Files\Rancher Desktop\resources\resources\win32\docker-cli-plugins\;C:\Program Files\Rancher Desktop\resources\resources\linux\bin\;C:\Program Files\Rancher Desktop\resources\resources\linux\docker-cli-plugins\;C:\Program Files\WSL\;C:\Program Files\PowerShell\7\;C:\Users\ttldt\AppData\Local\Programs\Python\Python314\Scripts\;C:\Users\ttldt\AppData\Local\Programs\Python\Python314\;C:\Users\ttldt\scoop\shims;C:\Users\ttldt\.cargo\bin;C:\Users\ttldt\AppData\Local\Microsoft\WindowsApps;C:\Users\ttldt\.dotnet\tools;C:\Users\ttldt\AppData\Roaming\npm;C:\Users\ttldt\AppData\Roaming\nvm;C:\Program Files\nodejs;C:\Users\ttldt\AppData\Local\JetBrains\Toolbox\scripts;C:\Program Files (x86)\Nmap;C:\Users\ttldt\AppData\Local\Microsoft\WinGet\Packages\Gyan.FFmpeg_Microsoft.Winget.Source_8wekyb3d8bbwe;C:\Users\ttldt\AppData\Local\Microsoft\WinGet\Links;C:\Users\ttldt\go\bin;C:\Users\ttldt\AppData\Local\Coursier\data\bin;C:\Program Files\Neovim\bin;C:\Users\ttldt\.cache\lm-studio\bin;C:\Users\ttldt\.dotnet\tools;C:\Users\ttldt\AppData\Local\Microsoft\WinGet\Packages\dotPDN.PaintDotNet_Microsoft.Winget.Source_8wekyb3d8bbwe;C:\Users\ttldt\AppData\Local\Microsoft\WinGet\Packages\ggml.llamacpp_Microsoft.Winget.Source_8wekyb3d8bbwe;C:\Users\ttldt\AppData\Local\Microsoft\WindowsApps;~\src\psh\scripts;C:\Program Files\Microsoft Visual Studio\18\Community\VC\Tools\Llvm\x64\bin;C:\Program Files\Microsoft Visual Studio\18\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin;C:\Program Files\Microsoft Visual Studio\18\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\Ninja;C:\Program Files\Microsoft Visual Studio\18\Community\Common7\IDE\VC\Linux\bin\ConnectionManagerExe;C:\Program Files\Microsoft Visual Studio\18\Community\VC\vcpkg' \
'TEMP=C:\Users\ttldt\AppData\Local\Temp' \
'C:\jdk\graalvm-community-25.2.4+7.1\bin\java.exe' \
-XX:+UnlockExperimentalVMOptions \
-XX:+EnableJVMCI \
-Dgraalvm.locatorDisabled=true \
-Dtruffle.TruffleRuntime=com.oracle.truffle.api.impl.DefaultTruffleRuntime \
-Dgraalvm.ForcePolyglotInvalid=true \
--add-exports=java.base/com.sun.crypto.provider=org.graalvm.nativeimage.builder \
--add-exports=java.base/jdk.internal.access=jdk.graal.compiler.hostvmaccess,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=jdk.graal.compiler.hostvmaccess,org.graalvm.nativeimage.base,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,jdk.graal.compiler.hostvmaccess,org.graalvm.nativeimage.builder,org.graalvm.nativeimage.objectfile,org.graalvm.nativeimage.pointsto \
--add-exports=java.base/jdk.internal.module=jdk.graal.compiler.hostvmaccess,jdk.graal.compiler.vmaccess,org.graalvm.nativeimage.base,org.graalvm.nativeimage.builder,org.graalvm.nativeimage.shared \
--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.protocol.file=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.net.www.protocol.ftp=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.net.www.protocol.http=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.net.www.protocol.https=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.net.www.protocol.jar=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.net.www.protocol.jmod=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.net.www.protocol.jrt=org.graalvm.nativeimage.builder \
--add-exports=java.base/sun.net.www.protocol.mailto=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.base,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.spi=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.graal.compiler/jdk.graal.compiler.api.replacements=jdk.graal.compiler.hostvmaccess \
--add-exports=jdk.graal.compiler/jdk.graal.compiler.api.runtime=jdk.graal.compiler.hostvmaccess \
--add-exports=jdk.graal.compiler/jdk.graal.compiler.core.target=jdk.graal.compiler.hostvmaccess \
--add-exports=jdk.graal.compiler/jdk.graal.compiler.phases.util=jdk.graal.compiler.hostvmaccess,jdk.graal.compiler.vmaccess \
--add-exports=jdk.graal.compiler/jdk.graal.compiler.runtime=jdk.graal.compiler.hostvmaccess \
--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,jdk.graal.compiler.hostvmaccess,jdk.graal.compiler.vmaccess,org.graalvm.nativeimage.base,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.annotation=jdk.graal.compiler,jdk.graal.compiler.hostvmaccess,jdk.graal.compiler.vmaccess,org.graalvm.nativeimage.base,org.graalvm.nativeimage.builder,org.graalvm.nativeimage.configure,org.graalvm.nativeimage.guest.staging,org.graalvm.nativeimage.objectfile,org.graalvm.nativeimage.pointsto \
--add-exports=jdk.internal.vm.ci/jdk.vm.ci.meta=jdk.graal.compiler,jdk.graal.compiler.hostvmaccess,jdk.graal.compiler.vmaccess,org.graalvm.nativeimage.base,org.graalvm.nativeimage.builder,org.graalvm.nativeimage.configure,org.graalvm.nativeimage.guest.staging,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,jdk.graal.compiler.hostvmaccess,org.graalvm.nativeimage.base,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.settings=org.graalvm.nativeimage.builder \
--add-exports=jdk.jfr/jdk.jfr.internal.tracing=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 \
-XX:MaxRAMPercentage=23.45195302178077 \
'-Dsvm.build.memoryUsageReasonText=30.00GiB of memory (23.5% of system memory, capped at 30GiB)' \
-Xss10m \
-XX:+UseParallelGC \
-XX:GCTimeRatio=9 \
-XX:+ExitOnOutOfMemoryError \
-XX:+UseCompressedOops \
-Djava.awt.headless=true \
'-Dorg.graalvm.vendor=GraalVM Community' \
-Dorg.graalvm.vendorurl=https://www.graalvm.org/ \
'-Dorg.graalvm.vendorversion=GraalVM CE 25.2.4+7.1' \
-Dorg.graalvm.version=25.2.4 \
-Dcom.oracle.graalvm.isaot=true \
-Djava.system.class.loader=com.oracle.svm.hosted.NativeImageSystemClassLoader \
-Djava.util.concurrent.ForkJoinPool.common.exceptionHandler=com.oracle.svm.hosted.CommonPoolUncaughtExceptionHandler \
'-Djava.util.concurrent.ForkJoinPool.common.threadFactory=com.oracle.svm.hosted.NativeImageSystemClassLoader$NativeImageForkJoinWorkerThreadFactory' \
-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 \
'-Dcom.oracle.svm.provided=C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\library-support.jar;C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\svm-guest-staging.jar;C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\svm-guest.jar;C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\svm-shared.jar;C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\vmaccess-guest.jar' \
--add-modules=ALL-DEFAULT \
--enable-native-access=org.graalvm.nativeimage.objectfile,org.graalvm.espresso.shared.svm,org.graalvm.nativeimage.guest.staging,org.graalvm.nativeimage.shared,org.graalvm.nativeimage.configure,org.graalvm.nativeimage.foreign,org.graalvm.nativeimage.builder,org.graalvm.nativeimage.base,org.graalvm.nativeimage.pointsto,jdk.graal.compiler.vmaccess,org.graalvm.nativeimage.shaded.capnproto,jdk.graal.compiler.hostvmaccess,jdk.graal.compiler.vmaccess.guest \
--module-path \
'C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\builder\espresso-svm.jar;C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\builder\hostvmaccess.jar;C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\builder\native-image-base.jar;C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\builder\objectfile.jar;C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\builder\pointsto.jar;C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\builder\svm-capnproto-runtime.jar;C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\builder\svm-configure.jar;C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\builder\svm-foreign.jar;C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\builder\svm-guest-staging.jar;C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\builder\svm-shared.jar;C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\builder\svm.jar;C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\builder\vmaccess-guest.jar;C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\builder\vmaccess.jar' \
--module \
org.graalvm.nativeimage.builder/com.oracle.svm.hosted.NativeImageGeneratorRunner \
-keepalive \
'C:\Users\ttldt\AppData\Local\Temp\driverRoot-15335584733298273173\.native_image.alive' \
-imagecp \
'C:\w\testGraalDriverWarnings' \
-imagemp \
'C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\library-support.jar;C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\svm-guest.jar' \
'-H:CLibraryPath=C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\clibraries\windows-amd64,C:\jdk\graalvm-community-25.2.4+7.1\lib\svm\clibraries' \
'-H:Path@driver=C:\w\testGraalDriverWarnings' \
-H:TreatWarningsAsError@user+api=all \
-H:Name@user+api=Hello \
'-H:Class@explicit main-class=Hello' \
-H:ImageBuildID@driver=71e7ed07-bc23-76c9-f9b3-c11e00dfcaf9 \
'-H:Features@jar:file:///C:/jdk/graalvm-community-25.2.4+7.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:///C:/jdk/graalvm-community-25.2.4+7.1/lib/svm/library-support.jar!/META-INF/native-image/com.oracle.svm/polyglot/native-image.properties+api=com.oracle.svm.polyglot.groovy.GroovyIndyInterfaceFeature' \
'-H:AddExports@jar:file:///C:/jdk/graalvm-community-25.2.4+7.1/lib/svm/svm-guest.jar!/META-INF/native-image/org.graalvm.nativeimage.guest/native-image.properties+api=java.base/jdk.internal.misc=org.graalvm.nativeimage.guest' \
'-H:Features@jar:file:///C:/jdk/graalvm-community-25.2.4+7.1/lib/svm/svm-guest.jar!/META-INF/native-image/org.graalvm.nativeimage.guest/native-image.properties+api=com.oracle.svm.guest.features.jdk.hosted.JavaNetHttpFeature' \
'-H:ClassInitialization@jar:file:///C:/jdk/graalvm-community-25.2.4+7.1/lib/svm/svm-guest.jar!/META-INF/native-image/org.graalvm.nativeimage.guest/native-image.properties+api=sun.net.httpserver.simpleserver:run_time' \
'-H:ReachabilityMetadataResources@jar:file:///C:/jdk/graalvm-community-25.2.4+7.1/lib/svm/svm-guest.jar!/META-INF/native-image/org.graalvm.nativeimage.guest/reachability-metadata.json+api=META-INF/native-image/org.graalvm.nativeimage.guest/reachability-metadata.json' \
-H:DriverWarningsCount=2
]
========================================================================================================================
GraalVM Native Image: Generating 'Hello.exe' (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...                                                                                   (4.0s @ 0.50GiB)
 Builder configuration:
 - Java version: 25.0.4+7, vendor version: GraalVM CE 25.2.4+7.1
 - Graal compiler: optimization level: 2, target machine: x86-64-v3
 - C compiler: cl.exe (microsoft, x64, 19.51.36252)
 - Assertions: disabled, system assertions: disabled
 Image configuration:
 - Garbage collector: Serial GC (max heap size: 80% of RAM)
 - Assertions: disabled (class-specific config may apply), system assertions: disabled
------------------------------------------------------------------------------------------------------------------------
Build resources:
 - 30.00GiB of memory (23.5% of system memory, capped at 30GiB)
 - 32 thread(s) (100.0% of 32 available processor(s), determined at start)
[2/8] Performing analysis...  [*****]                                                                   (2.2s @ 0.40GiB)
    2,187 types,   1,973 fields, and   9,082 methods found reachable
       80 types,      36 fields, and     195 methods registered for reflection
       53 types,      30 fields, and      48 methods registered for JNI access
       52 resource accesses registered with 107B total size
        1 native library: version
[3/8] Building universe...                                                                              (0.6s @ 0.71GiB)
[4/8] Parsing methods...      [*]                                                                       (0.3s @ 0.52GiB)
[5/8] Inlining methods...     [***]                                                                     (0.2s @ 0.30GiB)
[6/8] Compiling methods...    [*]                                                                       (1.9s @ 0.62GiB)
[7/8] Laying out methods...   [*]                                                                       (0.6s @ 0.33GiB)
[8/8] Creating image...       [*]                                                                       (0.6s @ 0.56GiB)
   2.11MiB (42.16%) for code area:     4,677 compilation units
   2.69MiB (53.71%) for image heap:   42,664 objects and 1 resource
 211.81KiB ( 4.13%) for other data
   5.00MiB in total image size, 5.00MiB in total file size
------------------------------------------------------------------------------------------------------------------------
Top 10 origins of code area:                                Top 10 object types in image heap:
 230.84KiB o.g.n.runtime/com.oracle.svm.core.code            607.49KiB byte[] for string data
 221.80KiB java.base/java.lang                               589.23KiB byte[] for code metadata
 214.12KiB java.base/java.util                               306.00KiB java.base/java.lang.String
 169.34KiB o.g.n.runtime/com.oracle.svm.core.genscavenge     232.19KiB java.base/java.lang.Class
  85.93KiB java.base/java.util.concurrent                    222.12KiB o.g.n.runtime/c.o.s.core.hub.DynamicHubCompanion
  83.76KiB o.g.n.runtime/com.oracle.svm.graal.stubs          130.87KiB java.base/java.lang.Object[]
  57.02KiB o.g.n.runtime/com.oracle.svm.core                 115.53KiB java.base/char[]
  56.12KiB o.g.n.shared/com.oracle.svm.shared.option          78.80KiB byte[] for general heap data
  46.14KiB java.base/java.util.stream                         59.65KiB heap alignment
  37.74KiB java.base/sun.reflect.annotation                   48.09KiB byte[] for reflection metadata
 957.37KiB for 118 more packages                             362.03KiB for 622 more object types
------------------------------------------------------------------------------------------------------------------------
Recommendations:
 FUTR: Use '--future-defaults=all' to prepare for future releases.
 HEAP: Set max heap for improved and more predictable memory usage.
 CPU:  Enable more CPU features with '-march=native' for improved performance.
------------------------------------------------------------------------------------------------------------------------
                       0.5s (4.1% of total time) in 17 GCs | Peak RSS: 1.60GiB | CPU load: 13.75
------------------------------------------------------------------------------------------------------------------------
Build artifacts:
 C:\w\testGraalDriverWarnings\Hello.exe (executable, 5.00MiB)
========================================================================================================================
Finished generating 'Hello' in 11.0s.

The build process encountered 2 warnings.

Error: Build failed: Warnings are treated as errors because the -Werror flag is set.
com.oracle.svm.driver.NativeImage$NativeImageError
        at org.graalvm.nativeimage.driver/com.oracle.svm.driver.NativeImage.showError(NativeImage.java:2525)
        at org.graalvm.nativeimage.driver/com.oracle.svm.driver.NativeImage.build(NativeImage.java:2088)
        at org.graalvm.nativeimage.driver/com.oracle.svm.driver.NativeImage.performBuild(NativeImage.java:2025)
        at org.graalvm.nativeimage.driver/com.oracle.svm.driver.NativeImage.main(NativeImage.java:2020)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions