GraalVM:无法通过反射获取一个类的成员变量,以及解决办法

代码:

Field[] fields = YourClass.class.getDeclaredFields();

Run On JVM

可正常获取该类所有成员变量

Compile with GraalVM to Native Image

代码不报错,但fields数组长度为0

解决办法

实现RuntimeHintsRegistrar类,具体可见上一篇博文,并将YourClass进行反射许可申明

hints.reflection().registerType(YourClass.class, MemberCategory.values())
posted @ 2024-06-03 18:11  漠孤烟  阅读(154)  评论(0)    收藏  举报