为什么我无法在新的Java 1.8中创建存根?那么在没有存根的情况下查找远程对象应该怎么办呢?

时间:2014-04-01 09:53:53

标签: java rmi classnotfoundexception

  

警告:为JRMP生成和使用骨架和静态存根   已弃用。骷髅是不必要的,静态存根有   已被动态生成的存根取代。用户是   鼓励远离使用rmic来生成骨架和静态   存根。请参阅java.rmi.server.UnicastRemoteObject的文档。

error: Class serverside.Serverside not found.

1错误

3 个答案:

答案 0 :(得分:2)

  

弃用注意:不推荐支持静态生成Java远程方法协议(JRMP)存根和骨架。 Oracle建议您使用动态生成的JRMP存根,而不必将此工具用于基于JRMP的应用程序。有关详细信息,请参阅http://docs.oracle.com/javase/8/docs/api/java/rmi/server/UnicastRemoteObject.html中的java.rmi.server.UnicastRemoteObject规范。

来源:https://docs.oracle.com/javase/8/docs/technotes/tools/unix/rmic.html

答案 1 :(得分:1)

  

为什么我无法在新的Java 1.8中创建存根?

你是。

  

那么在没有存根的情况下查找远程对象应该怎么办?

有或没有存根,查找代码是相同的。

  

请参阅java.rmi.server.UnicastRemoteObject的文档。

好主意。那样做。

  

错误:Class serverside.Serverside not found。

此错误消息与存根无关。

简而言之,你的问题毫无意义。

答案 2 :(得分:1)

对于Java> 1.4,您不能静态启动它,但是可以使用java.rmi.registry来动态启动存根

package rmiEcho;
import java.net.MalformedURLException;
import java.rmi.*;
import java.rmi.registry.LocateRegistry;

/**
 *
 * @author hamza
 */
public class regServ {
    public static void main(String [] args) throws RemoteException, AlreadyBoundException, MalformedURLException{
        LocateRegistry.createRegistry(1099);
        echoInt objEcho = new EchoImp();
        System.out.print(objEcho.toString());
        Naming.bind("echoMsg", objEcho);
    }
}