2011-03-23 32 views
0

在我自己的類加載器中,我從jar文件中獲取所有條目,並使用defineClass()將類加載到內存中。Java:d​​efineClass和內部類

我的問題是,如果jar有內部類(例如MyClass $ 1.class)defineClass方法失敗,java.lang.NoClassDefFoundError: IllegalName異常。

很明顯,java需要jar中的所有文件才能工作,但是如何加載內部類?

+1

我們是否獲得了更多的異常跟蹤? – 2011-03-23 22:02:48

+0

爲什麼不簡單使用普通的'URLClassLoader'? – 2011-03-27 03:10:46

回答

0

MyClass $ 1.class應該匹配一個匿名的內部類。如果你的內部類是命名的,它應該是MyClass $ InnerClass.class