Java RMI:连接被拒绝
我已经为RMI的客户端编写了以下代码。但是Java RMI:连接被拒绝,java,rmi,Java,Rmi,我已经为RMI的客户端编写了以下代码。但是 java.rmi.ConnectException: Connection refused to host: localhost; nested exception is: java.net.ConnectException: Connection refused: connect 代码: import java.rmi.*; import java.net.*; import java.rmi.registry.*; class cli
java.rmi.ConnectException: Connection refused to host: localhost; nested
exception is:
java.net.ConnectException: Connection refused: connect
代码:
import java.rmi.*;
import java.net.*;
import java.rmi.registry.*;
class client
{
public static void main(String [] ars)
{
Iface serv;
Registry r;
String serveraddr = ars[0];
String serverport = ars[1];
String text = "Hey jude";
System.out.println("Sending" + text);
try{
r = LocateRegistry.getRegistry(
serveraddr,
(new Integer(serverport)).intValue()
);
serv = (Iface) r.lookup("rmi://server");
serv.receive(text);
}
catch(Exception e){
System.out.println(e);
}
}
}
如果您在绑定、重新绑定或查找时得到该信息,则注册表未运行。如果您让它执行远程调用,请参阅随Javadoc提供的中的A.1项,如果您正在运行Linux,请检查/etc/hosts文件是否将127.0.0.1映射到localhost,并将您的真实ip地址映射到真实主机名-这在某些Linux发行版中是一个常见问题。我遇到了相同的问题。这很愚蠢,只是我忘了启动RMI注册表进程 所以,您还需要运行RMI注册表进程
rmiregistry
在您尝试使用RMI注册表重新绑定(地址,obj)之前。谢谢您的批评@贝盖拉杰