用于远程ip(主机)的Java RMI
我是新手。我不能正确理解RMI
。互联网上有很多教程,但据我所知,所有教程都是为本地主持人准备的。服务器和客户端都在同一台机器上运行
1099
上但是我如何才能做到这一点,我应该在哪里在客户端指定我的IP呢。据我所知,使用了命名转换,就像DNS一样,但无论如何,当我需要远程连接到某台机器时,我至少需要知道IP地址(+掩码)和端口
我想我错过了一些非常重要的事情
请举例说明如何在不同主机上远程配置RMI
你可以在下面搜索框中键入要查询的问题!
我是新手。我不能正确理解RMI
。互联网上有很多教程,但据我所知,所有教程都是为本地主持人准备的。服务器和客户端都在同一台机器上运行
1099
上我想我错过了一些非常重要的事情
请举例说明如何在不同主机上远程配置RMI
# 1 楼答案
首先,您必须设置一个服务器,其方法或对象可以被任何远程客户端访问 下面是服务器的示例代码
在服务器计算机上启动rmi注册表,这样您就可以将对象注册到此注册表中,并且最好在您放置类的位置运行它,否则您将得到ClassNotFound
注意:如果端口已在使用中,则可能需要更改端口
将您的对象注册到名为“calculator”的rmi注册表
注意:要运行该程序,您必须设置一个安全策略文件,并为此创建一个文件,例如test。策略并复制以下内容
您可以根据您的情况更改IP和端口
启动服务器后,假设服务器的IP地址为11.11.11.11,则可以在服务器上调用MyCalc的add()。因此,在您的客户机上,您的客户机代码如下:
将MyCalc类从服务器复制到客户端计算机,以便在编译客户端代码时将其设置为类路径
编译并测试客户机的代码
编辑:编辑以删除对rmi编译器(rmic)的依赖关系
# 2 楼答案
您只需在一个位置指定服务器的IP地址:提供给
Naming.lookup().
的查找字符串[除非您有RMI常见问题解答项目A.1中提到的Linux问题。]