java.lang.IllegalAccessError:试图从类 Entity 访问字段 ConcreteEntity.instance
好的,这就是交易。我正在尝试访问ConcreteEntity.instance
which 是一个具有访问类型 default 的字段,该字段存在于 default 中ClassLoader
,并且Entity.getInstance
是一个存在于 child 中的方法ClassLoader
。
现在请记住,它们都在同一个包中,但是IllegalAccessError
正在抛出一个。这个问题有没有解决方案,不涉及我实际加载 EntityClassLoader
类ConcreteEntity
?
0 new #14 <Entity>
3 dup
4 aload_0
5 invokevirtual #18 <Adapter.getInstance>
8 checkcast #20 <sl>
11 getfield #24 <sl.d>
14 invokespecial #25 <Entity.<init>>
17 areturn
通过 jclasslib 检索到的字节码是在“编译后”生成的异常。
感谢 Gamb 清理帖子。