2011-12-07 62 views
-1

我有什麼做的,當我有這樣的錯誤:錯誤,當我跑我的RMI項目

java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is: java.lang.ClassNotFoundException

我加了倉的路徑在JDK中的「我的電腦」的屬性:這一個「 C:\ Program Files文件\的Java \ jdk1.6.0_19 \ BIN」

,我進入到運行CMD-

cd C:\Users\user\Documents\NetBeansProjects\CountRMI\src\countrmi 
start rmiregistry 

,我運行服務器,那麼這個錯誤出現

java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is: java.lang.ClassNotFoundException

感謝ü

回答

0

考慮看Cajo project。它包裝RMI,因此您不必擔心啓動rmi註冊表等。 從的Cajo wiki pages

Duck.java

public interface Duck { 
    boolean looks(); 
    boolean walks(); 
    boolean talks(); 
} 

DuckServer.java

import gnu.cajo.invoke.Remote; 
import gnu.cajo.utils.ItemServer; 

public class DuckServer implements Duck { 
    public boolean looks() { 
     System.out.println("hi there!"); 
     return true; 
    } 
    public boolean walks() { 
     System.out.println("waddle waddle"); 
     return true; 
    } 
    public boolean talks() { 
     System.out.println("quack quack!"); 
     return true; 
    } 
    public static void main(String args[]) throws Exception { // simple unit test 
     Remote.config(null, 1198, null, 0); // use cajo port 1198 
     ItemServer.bind(new DuckServer(), "Donald"); 
     System.out.println("duck server running"); 
    } 
} 

DuckClient.java

一個請參見下面的實施例0
0

時間已過,但也許這有助於某人。當你把

cd C:\Users\user\Documents\NetBeansProjects\CountRMI\src\countrmi 

你去路徑設置爲源文件,但是喲必須將它設置爲類文件,這樣

cd C:\Users\user\Documents\NetBeansProjects\CountRMI\build\classes 

,並開始rmiregistry,當然

至少,它對我來說工作得很好。

相關問題