java.rmi.ConnectException:连接拒绝承载192.168.56.1
我尝试使用命令提示符在Windows8系统上安装开源软件。 我以前从未做过类似的事情,而且我对使用RMI也不是很有经验。我需要一些帮助来处理我遇到的异常错误。 这是我遵循的程序: 我已经设置了这样一个类路径java.rmi.ConnectException:连接拒绝承载192.168.56.1,java,rmi,Java,Rmi,我尝试使用命令提示符在Windows8系统上安装开源软件。 我以前从未做过类似的事情,而且我对使用RMI也不是很有经验。我需要一些帮助来处理我遇到的异常错误。 这是我遵循的程序: 我已经设置了这样一个类路径 set CLASSPATH=C:\kuwaiba7\service\lib\PersistenceAbstractionAPI.jar;C:\kuwaiba7\service\lib\PersistenceServiceRemoteInterfaces.jar 然后启动RMI注册表:
set CLASSPATH=C:\kuwaiba7\service\lib\PersistenceAbstractionAPI.jar;C:\kuwaiba7\service\lib\PersistenceServiceRemoteInterfaces.jar
然后启动RMI注册表:
start "C:\Program Files\Java\jdk1.7.0_71\bin\rmiregistry.exe
将打开一个新的命令提示符窗口。在此窗口中,我为PersistenceService运行以下命令:
C:\kuwaiba7\service>java -Djava.rmi.server.codebase="file:/C:/kuwaiba7/service/l
ib/PersistenceAbstractionAPI.jar file:/C:/kuwaiba7/service/lib/PersistenceServiceRemoteInterfaces.jar" -jar PersistenceService.jar
第一行显示已建立到数据库的连接,但随后出现:java.rmi.ConnectException错误
[Sun Nov 23 13:57:02 EET 2014] Current working directory: C:\kuwaiba7\service
[Sun Nov 23 13:57:02 EET 2014] Establishing connection to the database...
[Sun Nov 23 13:57:03 EET 2014] Connection established
EmbeddedGraphDatabase [C:\kuwaiba7\service\target\kuwaiba.db]
[Sun Nov 23 13:57:04 EET 2014] Registry obtained
java.rmi.ConnectException: Connection refused to host: 192.168.56.1; nested exception is:
java.net.ConnectException: Connection refused: connect
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(Unknown Source)
at sun.rmi.transport.tcp.TCPChannel.createConnection(Unknown Source)
at sun.rmi.transport.tcp.TCPChannel.newConnection(Unknown Source)
at sun.rmi.server.UnicastRef.newCall(Unknown Source)
at sun.rmi.registry.RegistryImpl_Stub.rebind(Unknown Source)
at org.kuwaiba.persistenceservice.Main.main(Main.java:72)
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(Unknown Source)
at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(Unknown Source)
... 6 more
[Sun Nov 23 13:57:05 EET 2014] Abnormal program termination. See log file for details
[Sun Nov 23 13:57:02 EET 2014]当前工作目录:C:\kuwaiba7\service
[Sun Nov 23 13:57:02 EET 2014]正在建立与数据库的连接。。。
[Sun Nov 23 13:57:03 EET 2014]已建立连接
EmbeddedGraphDatabase[C:\kuwaiba7\service\target\kuwaiba.db]
[2014年11月23日星期日13:57:04 EET]获得注册
java.rmi.ConnectException:拒绝连接主机:192.168.56.1;嵌套异常是:
java.net.ConnectException:连接被拒绝:连接
位于sun.rmi.transport.tcp.TCPEndpoint.newSocket(未知源)
位于sun.rmi.transport.tcp.tcpcchannel.createConnection(未知源)
位于sun.rmi.transport.tcp.tcpcchannel.newConnection(未知源)
位于sun.rmi.server.UnicastRef.newCall(未知源)
位于sun.rmi.registry.RegistryImpl_Stub.rebind(未知源)
位于org.kuwaiba.persistenceservice.Main.Main(Main.java:72)
原因:java.net.ConnectException:连接被拒绝:连接
位于java.net.DualStackPlainSocketImpl.connect0(本机方法)
位于java.net.DualStackPlainSocketImpl.socketConnect(未知源)
位于java.net.AbstractPlainSocketImpl.doConnect(未知源)
位于java.net.AbstractPlainSocketImpl.connectToAddress(未知源)
位于java.net.AbstractPlainSocketImpl.connect(未知源)
位于java.net.PlainSocketImpl.connect(未知源)
位于java.net.socksocketimpl.connect(未知源)
位于java.net.Socket.connect(未知源)
位于java.net.Socket.connect(未知源)
位于java.net.Socket。(未知源)
位于java.net.Socket。(未知源)
位于sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(未知源)
位于sun.rmi.transport.proxy.rmisMasterSocketFactory.createSocket(未知源)
... 还有6个
[Sun Nov 23 13:57:05 EET 2014]程序异常终止。有关详细信息,请参阅日志文件
我的问题是:
1) 如何确保RMI正常运行?
2) 我得到的这个异常是否意味着我的RMI没有运行?
3) 如何在命令提示符中解决此异常错误
我还想指出,在设置类路径之前,我遇到了另一个错误:
java.rmi.serverException
java.rmi.unmarshaleException
java.lang.classNotFoundException
在设置类路径之后,我停止了这些错误
在这件事上,我将感谢任何帮助。正如我提到的,我对RMI的工作不是很有经验,所以请耐心点!:)
谢谢
Dimitris我使用为注册表打开的命令提示符窗口启动并停止注册表。EJP在其上述评论中解释得非常清楚。
谢谢。您似乎已经启动并停止了注册表。当您发出START命令时,会打开一个新的命令窗口,但这是针对注册表的。你不能在里面运行任何你自己的东西。是的。你是对的。我真蠢,居然用我开的那扇窗户试试。如果你想回答问题,就接受它。