Exception in thread "main" java.rmi.server.ExportException: remote object implements illegal remote interface; nested exception is:
java.lang.IllegalArgumentException: illegal remote method encountered: public abstract void com.rmi.OrderService.ordered()
at sun.rmi.server.UnicastServerRef.exportObject(UnicastServerRef.java:203)
at java.rmi.server.UnicastRemoteObject.exportObject(UnicastRemoteObject.java:383)
at java.rmi.server.UnicastRemoteObject.exportObject(UnicastRemoteObject.java:320)
at java.rmi.server.UnicastRemoteObject.<init>(UnicastRemoteObject.java:198)
at java.rmi.server.UnicastRemoteObject.<init>(UnicastRemoteObject.java:180)
at com.rmi.OrderServiceImpl.<init>(OrderServiceImpl.java:17)
at com.rmi.Server.main(Server.java:20)
Caused by: java.lang.IllegalArgumentException: illegal remote method encountered: public abstract void com.rmi.OrderService.ordered()
at sun.rmi.server.Util.checkMethod(Util.java:267)
at sun.rmi.server.Util.getRemoteInterfaces(Util.java:246)
at sun.rmi.server.Util.getRemoteInterfaces(Util.java:216)
at sun.rmi.server.Util.createProxy(Util.java:146)
at sun.rmi.server.UnicastServerRef.exportObject(UnicastServerRef.java:201)
... 6 more
Disconnected from the target VM, address: '127.0.0.1:64058', transport: 'socket'
sun.rmi.server.Util#checkMethod 这个方法在校验RMI的支持远程调用方法的时候,必须要抛出RemoteException异常。