2013-03-04 105 views
0

這裏是我的設置:NoClassDefFoundException用的readObject接收對象時()

我的服務器等待IPlugin-ObjectsObjectInputStream。輸入IPlugin-Ob對象是一個未知的類,所以首先,類文件由OIS的classloader傳輸和加載。然後,IPlugin本身由客戶端發送。 IPlugin的轉換似乎不成問題(在OIS中使用我自己的類加載器時)。但IPlugin使用jama,現在當我收到對象時,我得到了一個NoClassDefFoundException。對我來說奇怪的是,在服務器classpath賈馬庫被包含。我也嘗試過寫一個虛擬行,所以這個庫真的會被導入(並且不會被編譯器忽略)。

有人可以幫我嗎?這真讓我心煩......

回答

0

好吧,我知道了:

的問題是,我的個人URIClassLoader了每一個URI可能的,但目前的類加載器。現在構造函數如下所示:

URLClassLoader loader = new URLClassLoader(new URL[]{pluginFolder.toURI().toURL()}, 
this.getClass().getClassLoader());