Java 工具集教程

rmid.exe 启动远程对象注册表

rmid.exe 是 Java 开发工具包(JDK)中的一个工具,用于启动远程对象注册表(Remote Object Registry)。远程对象注册表是 Java 远程方法调用(RMI)的核心组件之一,用于注册远程对象并提供客户端查找远程对象的功能。

命令语法

rmid <options>

命令选项

其中, <options> 包括:

  • -port <port>  指定供 rmid 使用的端口

  • -log <directory>  指定 rmid 将日志写入的目录

  • -stop  停止当前的 rmid 调用 (对指定端口)

  • -C<runtime flag>  向每个子进程传递参数 (激活组)

  • -J<runtime flag>  向 java 解释器传递参数

java 广告位

命令示例

(1)启动远程对象注册表

D:\share_dir\ShareDoc> rmid
Activation.main: 警告: sun.rmi.activation.execPolicy 系统   
属性未被指定且 ExecPermissions/ExecOptionPermissions        
均未被授权。随后的激活尝试失败, 原因是对
ExecPermission/ExecOptionPermission 的权限检查失败。有关如何
配置 rmid 安全性的文档说明, 请参阅:

http://java.sun.com/j2se/1.4/docs/tooldocs/solaris/rmid.html
http://java.sun.com/j2se/1.4/docs/tooldocs/win32/rmid.html

上面命令将启动远程对象注册表,默认监听在 1099 端口上。一旦远程对象注册表启动,就可以向其注册远程对象,并让客户端通过注册表查找并调用远程对象。

(2)指定远程对象注册表的端口

D:\share_dir\ShareDoc> rmid -port 9090
Activation.main: 警告: sun.rmi.activation.execPolicy 系统   
属性未被指定且 ExecPermissions/ExecOptionPermissions        
均未被授权。随后的激活尝试失败, 原因是对
ExecPermission/ExecOptionPermission 的权限检查失败。有关如何
配置 rmid 安全性的文档说明, 请参阅:

http://java.sun.com/j2se/1.4/docs/tooldocs/solaris/rmid.html
http://java.sun.com/j2se/1.4/docs/tooldocs/win32/rmid.html

上面命令将启动远程对象注册表,并指定注册表监听的端口号 9090。这样可以避免默认的 1099 端口已被占用的情况。

(3)指定远程对象注册表的日志文件

D:\share_dir\ShareDoc> rmid -log my_log
Activation.main: 警告: sun.rmi.activation.execPolicy 系统   
属性未被指定且 ExecPermissions/ExecOptionPermissions        
均未被授权。随后的激活尝试失败, 原因是对
ExecPermission/ExecOptionPermission 的权限检查失败。有关如何
配置 rmid 安全性的文档说明, 请参阅:

http://java.sun.com/j2se/1.4/docs/tooldocs/solaris/rmid.html
http://java.sun.com/j2se/1.4/docs/tooldocs/win32/rmid.html  

D:\share_dir\ShareDoc> tree /A /F my_log
卷 软件 的文件夹 PATH 列表
卷序列号为 000000BB EAE2:F5C2
D:\SHARE_DIR\SHAREDOC\MY_LOG
    Logfile.1
    Snapshot.1
    Version_Number

没有子文件夹

上面命令将启动远程对象注册表,并将注册表的日志信息输出到指定的日志文件(my_log)中。

(4)指定远程对象注册表的安全策略文件

D:\share_dir\ShareDoc> rmid -J-Djava.security.policy=rmi.policy
Activation.main: 警告: sun.rmi.activation.execPolicy 系统   
属性未被指定且 ExecPermissions/ExecOptionPermissions        
均未被授权。随后的激活尝试失败, 原因是对
ExecPermission/ExecOptionPermission 的权限检查失败。有关如何
配置 rmid 安全性的文档说明, 请参阅:

http://java.sun.com/j2se/1.4/docs/tooldocs/solaris/rmid.html
http://java.sun.com/j2se/1.4/docs/tooldocs/win32/rmid.html

上面命令将启动远程对象注册表,并指定注册表所使用的安全策略文件(rmi.policy),用于控制注册表的安全权限。

rmi.policy 安全策略文件内容如下:

grant codeBase "file:D:\\share_dir\\ShareDoc\\com\\hxstrive\\rmi\\*" {
    permission java.net.SocketPermission "192.168.1.100:1099", "connect,accept";
};
说说我的看法
全部评论(
没有评论
关于
本网站属于个人的非赢利性网站,转载的文章遵循原作者的版权声明,如果原文没有版权声明,请来信告知:hxstrive@outlook.com
公众号