1

我想编辑 RMI hello world 示例以在不同机器上使用客户端和服务器,但我遇到了解组返回错误。

如果我在 Netbeans 上的同一个项目中运行客户端和服务器,它们可以正常工作,但是当我拆分它们时,我将客户端的 try 语句编辑为:

try {
    Registry registry = LocateRegistry.getRegistry("localhost");
    String[] c = registry.list();
    System.out.println(c[0].toString());
    Remote lookup = Naming.lookup("HelloServer");                                             
} catch (Exception e) {
    System.out.println("HelloClient exception: " + e.getMessage());
}

没有Remote lookup = Naming.lookup("HelloServer");,打印命令给出正确的“HelloServer”,但是当我创建远程对象时,我收到了这个错误:

HelloClient exception: error unmarshalling return; nested exception is: 
java.lang.ClassNotFoundException: rmimain.Hello

我已经测试了该政策并且它运行良好,任何帮助将不胜感激。

4

1 回答 1

0

您的客户端在其 CLASSPATH 上没有 rmimain.Hello 类。

于 2013-05-19T23:17:58.007 回答