我想运行一个cyc (opencyc) Java类,但是当我运行这个类时,我得到了一个错误,提示网络是不可访问的。我正在开发NetBeans 7.0和OpenCyc2.0 win 32版本。我正在使用localhost (127.0.0.1)进行测试。错误如下所示。
Network is unreachable: connect
java.net.SocketException: Network is unreachable: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:519)
at java.net.Socket.connect(Socket.java:469)
at java.net.Socket.<init>(Socket.java:366)
at java.net.Socket.<init>(Socket.java:180)
at org.opencyc.api.CycConnection.initializeApiConnections(CycConnection.java:223)
at org.opencyc.api.CycConnection.<init>(CycConnection.java:199)
at org.opencyc.api.CycAccess.<init>(CycAccess.java:121)
at org.opencyc.api.CycAccess.<init>(CycAccess.java:61)
at org.opencyc.api.ApiDemo.<init>(ApiDemo.java:50)
at org.opencyc.api.ApiDemo.main(ApiDemo.java:147)
Exception in thread "main" java.lang.NullPointerException
at org.opencyc.api.ApiDemo.<init>(ApiDemo.java:56)
at org.opencyc.api.ApiDemo.main(ApiDemo.java:147)
Interruption while waiting Cyc connection establishment, closing sockets
Exception in thread "Thread-1" java.lang.NullPointerException
at org.opencyc.api.CycConnection$TaskProcessorBinaryResponseHandler.access$002(CycConnection.java:988)
at org.opencyc.api.CycConnection.close(CycConnection.java:268)
at org.opencyc.api.CycConnection$ConnectionTimer.run(CycConnection.java:1351)为什么会发生这种情况?如何连接到cyc?
发布于 2012-04-17 20:14:11
问题是您的网络设置不允许您连接到此计算机。这并不是Java本身的问题。
试一试
ping {hostname}在此之前,您无法在java中做任何事情来解决此问题。
发布于 2021-12-16 20:02:24
我团队中的一位开发人员今天遇到了这个问题,只有他们的机器在团队中的许多人中看到了这个问题。
通过大量的调试,我们最终发现,由于某些原因,localhost无法解析。它可以在某些JVM上下文中工作,但在其他环境中会失败,因此它完全不一致。
将localhost替换为显式127.0.0.1修复了此问题。我的直觉是,本地网络和IPv6可能有所不同,但我们仍然不太理解为什么这是修复。
https://stackoverflow.com/questions/10190568
复制相似问题