gpt4 book ai didi

java - RMI:什么变化需要重新编译 impl 类

转载 作者:行者123 更新时间:2023-11-30 05:17:03 26 4
gpt4 key购买 nike

我有两个使用 RMI 对象进行通信的应用程序。我确实有一个接口(interface)、一个实现类和生成的 stub 类。

我认识到,impl 类中的一些更改需要我创建一个新的 stub 类。

我的问题是,我可以在不重新编译 stub 的情况下进行哪些更改?

据我所知:

  • 我无法更改方法结构(添加、删除、更改方法)
  • 我可以将serialVersionUID添加到类中吗impl 类正在使用?
  • 我可以更改 impl 类的类吗使用?
  • 我可以记录 impl 和所有使用的类吗?

我问这个问题是因为我在本周初做了更改,现在 RMI 连接已断开。但我只添加评论并更新了我的检查样式。因此,我添加了串行版本 UID 并将一些类更改为最终版本。

最佳答案

如果更改任何方法签名(包括添加和删除),您只需重新运行 rmic 并生成部署类。生成的代码只是通过类的定义方法将远程调用对象链接到实际实现。

这意味着您可以毫无问题地更改 impl 代码(方法签名除外)以及 impl 类使用的任何类的代码。如果实现使用的那些类也是方法签名的一部分,那么客户端将需要适当的版本来匹配远程实现,但这不是 RMI 特定的。

关于java - RMI:什么变化需要重新编译 impl 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/665280/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com