有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

启动Oracle Coherence时出现java SocketException

尝试在开发模式下运行Oracle Coherence server,我得到:

2015-04-09 09:56:28.319/1.508 Oracle Coherence GE 12.1.3.0.0 <D4>(thread=main,member=n/a): TCMP bound to /xx.xx.49.22:8088 using SystemDatagramSocketProvider

Exception in thread "main" 2015-04-09 09:56:28.356/1.545 Oracle Coherence GE 12.1.3.0.0 <Error> (thread=main, member=n/a): Error while starting cluster 
(Wrapped) java.net.SocketException: An invalid argument was supplied
    at com.tangosol.util.Base.ensureRuntimeException(Base.java:289)
    ...
    at com.tangosol.net.DefaultCacheServer.main(DefaultCacheServer.java:355)

Caused by: java.net.SocketException: An invalid argument was supplied
    at java.net.TwoStacksPlainDatagramSocketImpl.socketNativeSetOption(Native Method)
    ...
    at com.tangosol.coherence.component.net.Cluster.onStart(Cluster.CDB:37)

对Java和一致性来说都是新的。所以socket异常意味着创建或连接socket时出错。我猜在这种情况下,问题是如何创建socket?我应该找些什么

编辑:经过更多的研究,我不断看到IPv4和IPv6的对比。TwoStacksPlainDatagramSocketImpl似乎增加了对IPv6的支持。我目前正在查看我的本地IP设置

编辑2:感谢biziclop提供了一个比较明显的(通过谷歌)解决方案。事实证明,当网络上禁用IPv6时,最新的Java版本会出现一个引发SocketException的错误

这可以通过:-Djava解决。网preferIPv4Stack=true


共 (0) 个答案