启动RMI报如下错误:
Caused by: java.rmi.ConnectIOException: error during JRMP connection establishment; nested exception is:
java.net.SocketException: Connection reset
at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:304)
at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:202)
at sun.rmi.server.UnicastRef.newCall(UnicastRef.java:338)
at sun.rmi.registry.RegistryImpl_Stub.rebind(RegistryImpl_Stub.java:147)
at gnnt.util.rmi.RMIServer.startRMI(RMIServer.java:110)
... 15 more
最后发现是端口冲突造成的,当时用的5003端口启动服务端的RMI刚好和本地的一个服务端口冲突。
输入netstat -aon|findstr "5003"查询它的pid为3056
继续输入tasklist|findstr "3056",查看是哪个进程或者程序占用了5003端口,结果是:magentproc.exe
找到PID后可以直接打开任务管理器,最后发现是LoadRunner占用了这个端口,关闭就可以 了