我使用rmi类,但我有一个问题。我的接口名为server,实现类的名为serverImpl。当我在命令行中键入rmic -v1.2 -classpath .. serverImpl (在编译接口和类之后)时,它显示以下错误:
error: Class serverImpl not found.我检查了指定目录中是否存在serverImpl。
发布于 2013-05-14 20:03:15
cmd将您的服务器类和实现的类放在一个文件夹中,将其命名为x
package x;
x文件夹的目录中编写包含x cmd rmic x.MyServer的目录中的javac x/MyServer.java和javac x/MyImpl.java。
PS:包名不同于RMI或类中使用的任何对象,这一点很重要。否则将发生对象碰撞。
发布于 2012-04-08 08:42:09
serverImpl不必‘存在于指定的目录中’。您还没有指定目录,而是指定了一个类,并且serverImpl必须存在于其中,位于适当的包结构下,您还必须在命令行中正确地命名它。因此,如果serverImpl位于包x.y中,则必须指定一个包含x/y目录的类,并在命令行中指定x.y.serverImpl。与使用'java‘命令运行时完全一样。
但是您已经有大约8年没有使用过rmic了--请参阅UnicastRemoteObject的Javadoc类。
发布于 2013-02-13 15:49:05
请将斜杠(/)转换为点(.)。这对我很管用。
我有以下结构
rmitest/
rmitest/MyRemoteIf.java
rmitest/MyRemoteImpl.java
javac rmitest/*.java
rmic rmitest.MyRemoteImpl输出结果为:
rmitest/MyRemoteIf.class
rmitest/MyRemoteImpl.class
rmitest/MyRemoteImpl_Stub.class
rmitest/MyRemoteImpl_Skel.class祝你好运!卡兰
https://stackoverflow.com/questions/10054795
复制相似问题