【发布时间】:2014-08-30 05:38:58
【问题描述】:
我在获取缺少/未使用特定依赖项的对象的声明字段时遇到问题。
Field[] fields = OBJECT.getClass().getDeclaredFields();
当该对象具有对缺失类的导入时,抛出 NoClassDefFoundError。
我想这样做的原因是为了一个 Bukkit 插件。我想获取缺少依赖项的插件实例的字段(它们没有被使用,但插件可以启动)。
在运行时,该插件将检查是否存在所需的依赖项,并根据该依赖项加载这些特定字段。
我想到的可能解决方案:
1)虚拟创建缺少的类+包,然后使用 ASM 重试。但我真的不知道该怎么做。
问候,
马克西姆
【问题讨论】:
-
假设你正在编写这个插件,为什么不去掉多余的导入呢?
-
我不是在写我想获取字段的插件,所以我不能修改它们。
-
凹凸(); //有人有答案吗?
-
@Maximvdw 评论不会影响您的帖子 AFAIK。
标签: java reflection field bukkit