springboot3 java21 Graalvm 解决原生反射问题

本文讲述了在使用GraalVM的native-image构建工具时遇到关于ApacheLoggingLog4j和SpringBoot项目中反射方法未注册的错误,以及如何通过添加反射元数据来解决此问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

报错如下

Exception in thread "main" org.graalvm.nativeimage.MissingReflectionRegistrationError: The program tried to reflectively invoke method public org.apache.logging.log4j.message.DefaultFlowMessageFactory() without it being registered for runtime reflection. Add it to the reflection metadata to solve this problem. See https://www.graalvm.org/latest/reference-manual/native-image/metadata/#reflection for help.
    at org.graalvm.nativeimage.builder/com.oracle.svm.core.reflect.MissingReflectionRegistrationUtils.forQueriedOnlyExecutable(MissingReflectionRegistrationUtils.java:97)
    at [email protected]/java.lang.reflect.Constructor.acquireConstructorAccessor(Constructor.java:74)
    at [email protected]/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:496)
    at [email protected]/java.lang.reflect.ReflectAccess.newInstance(ReflectAccess.java:128)
    at [email protected]/jdk.internal.reflect.ReflectionFa
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值