如何在RMI中自动将接口.class文件导入客户端?

时间:2013-10-13 06:13:30

标签: java rmi

我非常喜欢RMI,所以我的问题可能有点误会。

我现在要描述我的问题。

当我在Eclipse上开发RMI应用程序时:

服务器端:

  1. 创建一个项目,只是为了定义我的应用需要的所有接口(扩展远程)。
  2. 创建一个用于实现上述接口的项目。
  3. 创建服务器项目并将远程对象注册到RMIRegistry。
  4. 客户端

    1. 创建一个客户端项目。我的问题在这里:

      一个。 CalInterface c =(CalInterface)r.lookup(“mycalserver”);

    2. 因为CalInterface不在客户端项目中,所以我需要构建并将CalInterface .class复制到客户端项目(通过添加外部类文件夹)。它工作正常。

      我的问题是:

      1. 如何在客户端项目中自动导入?。
      2. CalInterface.class是客户端中的存根角色吗?
      3. 我的方法是否适合开发RMI应用程序?
      4. 谢谢。

1 个答案:

答案 0 :(得分:1)

  

服务器端:

     

创建一个项目,只是为了定义我的应用需要的所有接口(扩展远程)。

没有。这应该是由服务器和客户端项目共享的单独项目。它不仅必须包含远程接口,还必须包含远程接口所依赖的任何应用程序类,以此类推,直到关闭。

  

创建一个用于实现上述接口的项目。      创建一个服务器项目并将远程对象注册到RMIRegistry。

您不需要这两者,您可以将它们合并到一个服务器项目中,并将共享项目添加到它。

  

客户端

     

创建一个客户项目。

并将共享项目添加到其中。

  

我的问题是:

     

如何在客户端项目中自动导入?。

见上文。

  

CalInterface.class是客户端中的存根角色吗?

不,它是一个远程接口。您从<{1}}获取的对象是实现该接口的远程存根,但其机制是自动的,与您无关。

  

我的方法是否适合开发RMI应用程序?

不,见上文。