如果类与客户端一起分发,是不是可以在没有 HTTP 服务器的情况下使用分布式 RMI?

Posted

技术标签:

【中文标题】如果类与客户端一起分发,是不是可以在没有 HTTP 服务器的情况下使用分布式 RMI?【英文标题】:Is Distributed RMI Possible without a HTTP server if classes are distributed with client?如果类与客户端一起分发,是否可以在没有 HTTP 服务器的情况下使用分布式 RMI? 【发布时间】:2011-02-23 09:28:25 【问题描述】:

我一直在对使用 RMI 进行一些研究,并且在几乎所有情况下,他们都说您应该使用 Web、http 或 ftp 服务器来允许类加载器加载所需的类。

在这篇文章jGuru: Remote Method Invocation (RMI) 中,它开始了关于安装和部署的部分,说类必须对类加载器可用,然后继续说明为什么需要有一个 http 或 ftp 服务器。

所以我的问题是,当我可以将要在客户端和服务器之间共享的类放在与应用程序的两个部分一起分发的 jar 文件中时,为什么我必须使用 http 或 ftp 服务器?据我了解,这将使两个类加载器都可以使用这些类,而无需 http 或 ftp 服务器,还是我做出了错误的假设?

【问题讨论】:

【参考方案1】:

您不必使用代码库功能。如果您可以提前将所有需要的类分发给客户,那么一定要这样做。如果您不想这样做,或者如果您想要一种简单的方法来更新客户端的 RMI 相关部分,而无需重新部署整个内容,则代码库功能只是为您提供了一种不必这样做的方法。

【讨论】:

谢谢,我希望是这样。我只是找不到任何提到这一点的文档。

以上是关于如果类与客户端一起分发,是不是可以在没有 HTTP 服务器的情况下使用分布式 RMI?的主要内容,如果未能解决你的问题,请参考以下文章

分发配置文件是不是来自分发证书?

无法将动态类与 concurrent.futures.ProcessPoolExecutor 一起使用

SCCM PXE客户端无法加载DP(分发点)映像

SCCM 2016 分发.exe 软件

Java类与继承

SCCM2016 集成WSUS提供补丁服务