实验环境
windows10;
cmd;
报错详情
Exception in thread "main" java.rmi.ConnectException: Connection refused to host: 169.254.227.200; nested exception is:
java.net.ConnectException: Connection refused: connect
at java.rmi/sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:623)
at java.rmi/sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:209)
at java.rmi/sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:196)
at java.rmi/sun.rmi.server.UnicastRef.newCall(UnicastRef.java:343)
at java.rmi/sun.rmi.registry.RegistryImpl_Stub.rebind(RegistryImpl_Stub.java:150)
at java.rmi/java.rmi.Naming.rebind(Naming.java:177)
at Server.main(Server.java:7)
Caused by: java.net.ConnectException: Connection refused: connect
at java.base/sun.nio.ch.Net.connect0(Native Method)
at java.base/sun.nio.ch.Net.connect(Net.java:493)
at java.base/sun.nio.ch.Net.connect(Net.java:482)
at java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:588)
at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:339)
at java.base/java.net.Socket.connect(Socket.java:603)
at java.base/java.net.Socket.connect(Socket.java:552)
at java.base/java.net.Socket.<init>(Socket.java:475)
at java.base/java.net.Socket.<init>(Socket.java:249)
at java.rmi/sun.rmi.transport.tcp.TCPDirectSocketFactory.createSocket(TCPDirectSocketFactory.java:40)
at java.rmi/sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:617)
... 6 more
解决方法
在注册服务前,输入命令start rmiregistry,会弹出以下方框
在命令控制台下运行这个系统的,必须开启三个控制台窗口,一个运行服务器,一个运行客户端,还有一个运行rmiregistry。
我报错的原因是我以为输入指令start rmiregistry后就可以把rmiregistry关闭了。
如有错误,欢迎指正!(有帮助的话,点个赞哟!)