rmic - Java RMI
Stub 编译
器
rmic
为远
程
对
象生成
stub 和
skeleton。
结
构
rmic [ options
] package-qualified-class-name(s)
说
明
rmic
编译
器
根据
编译
后的
Java 类
(含有
远
程
对
象
实现
)名,
为远
程
对
象生成
stub 和
skeleton(
远
程
对
象是指
实现
java.rmi
.Remote
接口的
对
象)。在
rmic
命令中所
给
的
类
必
须
是
经
javac
命令成功
编译
且是完全包限定的
类
。例如,按如下所示
对类
文件名
HelloImpl
运行
rmic
:
rmic hello.HelloImpl
这
将
创
建
HelloImpl_Skel.class
和
HelloImpl_Stub.class
文件。
远
程
对
象的
skeleton 是服
务
器端
实
体,它包含一个方法,
该
方法将
调
用分
配
给实际
的
远
程
对
象
实现
。
stub 是
远
程
对
象的代理,它
负责
将
远
程
对
象的方法
调
用
转发给实际远
程
对
象
实现
所
驻
留的服
务
器。因此,客
户
机
对远
程
对
象的引用
实际
上是
对
本地
stub 的引用。
stub 只
实现远
程接口,不
实现
任何本地接口,而
远
程
对
象两者都
实现
。因
为
stub 与
远
程
对
象本身
实现
的是同一个
远
程接口集,所以客
户
机可以用
Java 语
言的内置操作符
进
行
强
制
类
型
转换
和
类
型
检查
。
选项
-classpath
路径
指定
rmic
用于
查询类
的路径。如果
设
置了
该选项
,它将覆盖缺省
值
或
CLASSPATH 环
境
变
量。目
录
用冒号分隔。因此,
路径
的一般格式是:
.:<您的路径
>
例如:
.:/usr/local/java/classes
-d
目
录
指定
类层
次的根目
录
。此
选项
可用来指定
stub 和
skeleton 文件的目
标
目
录
。例如,命令
% rmic -d /java/classes foo.MyClass
将来自
MyClass 的
stub 和
skeleton 类
放到
/java/classes/foo
目
录
中。如果未使用
-d
选项
,
则
忽略目
标类
的包
层
次,并将
stub 和
skeleton 文件放在当前目
录
中。
-depend
使
编译
器
考
虑
重新
编译
从其它
类
引用的
类
。
一般来
说
,它只重新
编译
从源代
码
引用的
遗
漏或
过
期的
类
。
-g
允
许
生成
调试
表格。
调试
表格含有行号和局部
变
量的有
关
信息,即
Java 调试
工具所使用的信息。缺省情况下,只生成行号。
-J
与
-D 选项联
用,它将
紧
跟其后的
选项
(
-J 与
-D 之
间
无空格)
传给
java 解
释
器
。
-keepgenerated
为
stub 和
skeleton 文件保留所生成的
.java
源文件,并将
这
些源文件写到与
.class
文件相同的目
录
中,如果要指定目
录
,
则
使用
-d
选项
。
-nowarn
关闭
警告。如果使用
该选项
,
则编译
器
不
输
出任何警告信息。
-show
显
示
rmic
编译
器
的
GUI(
图
形用
户
界面)。
输
入一个或多个包限定
类
名(以空格分隔),并按回
车键
或
“显
示
”按
钮
,
创
建
stub 和
skeleton。
-vcompat
(缺省
值
)
创
建与
JDK
1.1 和
1.2 stub 协议
版本都兼容的
stub 和
skeleton。
-verbose
使
编译
器
和
链
接
器
输
出
关
于正在
编译
哪些
类
和正在加
载
哪些
类
文
件的信息。
-v1.1
创
建
JDK 1.1 stub 协议
版本的
stub 和
skeleton。
-v1.2
只
创
建
JDK
1.2 stub 协议
版本的
stub。
环
境
变
量
CLASSPATH
用于
为
系
统
提供用
户
定
义类
的路径。
用冒号分隔目
录
。例如:
.:/usr/local/java/classes
説明(せつめい):この文章(ぶんしょう)はネットワークから書き出しました。書き出す(かきだす)
分享到:
相关推荐
2. **RMI架构**:RMI的核心组件包括远程接口(Remote Interface)、远程对象(Remote Object)、RMIC编译器和RMI注册表(RMI Registry)。远程接口定义了客户端可以调用的远程方法,远程对象实现了这些接口并实际...
综上所述,"RMI聊天室-Java实现"是一个综合运用了Java RMI技术、多线程、I/O流、序列化、设计模式以及安全性的项目。通过这个项目,开发者可以深入理解Java的分布式编程原理,提升在大型网络应用中的编程能力。
1. RMIC编译器:用于生成远程对象的Stub和Skeleton类。Stub类是客户端与服务器交互的代理,Skeleton类(Java SE 1.2之后已不再需要)处理来自Stub的请求。 2. rmiregistry:RMI注册表服务,存储远程对象的名称和引用...
在文件内容中,通过使用rmic工具(Java RMI stub/skeleton编译器)生成了PerfectTime对象的stub和skeleton类文件。 值得注意的是,在Java RMI中传递的参数是通过Java序列化机制来进行的。这意味着对象及其状态将被...
- **RMIC编译器**: 用于生成stub和skeleton的工具,通过执行`rmic`命令对远程接口进行编译。 - **RMI服务器**: 运行远程对象的JVM。 - **RMI客户端**: 调用远程对象的JVM。 - **RMI Activation System**: 用于动态地...
Stub是自动生成的,通过Java的rmic编译器,它将远程接口和其实现转换为Stub类。 Skeleton则是服务器端的组件,它接收来自客户端的网络消息并调用相应的远程对象方法。Skeleton在Java RMI早期版本中是必需的,但在...
Java编译器或rmic工具可以自动生成存根类。 4. **骨架(Skeleton)**:在服务器端,骨架是远程接口的代理,用于接收来自客户端的调用并转发给相应的实现类。在Java RMI的现代版本中,骨架已经不常用,它的功能由Java...
6. **RMIC编译器**:Java提供了一个名为rmic的工具,用于生成Stub和Skeleton类。不过,对于Java 1.2及更高版本,这些类会自动生成,因此通常不需要手动使用rmic。 一个简单的RMI示例步骤如下: 1. 定义远程接口,...
- `rmic`:RMI编译器,用于生成服务器端所需的Stub和Skeleton类。 - `rmiregistry`:RMI注册表,用于管理远程对象的名称和引用。 - `java.rmi.Naming`:RMI编程中的命名类,用于查找和绑定对象到注册表。 总之,...
- `rmic`:RMI编译器,用于生成客户端所需的存根(Stub)和 skeletons(Skeleton)类。 - `rmiregistry`:RMI注册表,用于管理远程对象的注册。 - `jconsole` 或 `jvisualvm`:JVM监视工具,可以查看RMI连接和性能...
- **创建客户端 stub** 和 **服务器端 skeleton**:RMI编译器`rmic`会自动生成客户端的stub类和服务器端的skeleton类,它们负责在网络间传输方法调用。 - **启动RMI服务**:服务器端需要启动RMI服务,通常使用`...
9. **工具支持**:Java提供了一些用于RMI开发的工具,如`rmic`(生成stubs和skeletons的命令行工具),`rmiregistry`(启动RMI注册表的命令行工具)。 10. **实战应用**:RMI常用于构建分布式服务,例如在EJB...
4. **RMIC编译器**:这是一个工具,它将远程接口转换为必要的Java序列化类和Stub/Skeleton类,使得客户端能够进行远程调用。 5. **分布式会议系统设计**:在本项目中,可能包括用户登录、创建会议、加入会议、发言...
rmic 编译器根据编译后的 Java 类(含有远程对象实现)名,为远程对象生成 stub 和 skeleton(远程对象是指实现 java.rmi.Remote 接口的对象)。在 rmic 命令中所给的类必须是经 javac 命令成功编译且是完全包限定的...
在开发RMI应用时,常用的工具有JDK自带的RMI注册表(rmiregistry)、`rmic`编译器(用于生成stub和skeleton文件),以及IDE如Eclipse或IntelliJ IDEA中的RMI插件,它们可以帮助开发者更便捷地创建、部署和调试RMI...
2. **生成stub和skeleton**:使用rmic编译器,根据远程接口生成对应的stub和skeleton类。 3. **启动服务器**:在服务器端,通过Registry服务绑定远程对象的引用,这样客户端就可以找到它。 4. **客户端查找远程...
RMIC编译器用于将远程接口转换为Java序列化所需的 stub 和 skeleton 类,这些类在服务器和客户端之间传输对象时起着关键作用。 操作系统作为软件的基础层,管理硬件资源并提供服务给上层应用,包括进程管理、内存...
3. ** stubs 和 skeletons**:`rmic`是一个专用的编译器,用于生成客户端(stub)和服务器端(skeleton)类。Stub类是客户端的代理,负责打包参数并发送请求,而Skeleton类在服务器端接收请求,解包参数并执行相应的...