2012-04-21 21 views
1

当启动Windows上的多播的java插座,我得到以下错误(防火墙停用):Java的多播套接字不工作在Windows(SocketPermission的除外)

java.security.AccessControlException:访问被拒绝(java.net.SocketPermission 230.0.0.1连接,接受,决心) 在java.security.AccessControlContext.checkPermission(来源不明) 在java.security.AccessController.checkPermission(来源不明) 在java.lang.SecurityManager.checkPermission(来源不明) 在java.lang.SecurityManager.checkMulticast(Unknown Source) at java.net.MulticastSocket.joinGroup(Unknown Source)ch.uzh.ifi.group10.server.RMIServer.startServer(RMIServer.java:176) ch.uzh.ifi .group10.server.RMIServer.main(RMIServer.java:279)

看来我无法加入多播组,因为程序没有对套接字的权限。有趣的是,相同的代码在linux上没有任何问题(ubuntu 11.10)。此外,我已经尝试添加一个套接字权限sec​​urity.policy文件(权限java.net.SocketPermission“230.0.0.1”,“连接,接受,听,解决”;)这也没有帮助。

我卡住了,因为我找不到任何其他地方的问题可能是什么或我失踪...任何想法?

+0

您正在构建一个独立的应用程序还是一个小程序? – 2012-04-21 11:11:09

+0

独立应用程序。我确实看到小应用程序需要在Windows上签名,但这不适用于独立应用程序或我错了吗? – Caroline 2012-04-21 13:16:49

+0

我应该更正:我发现在Linux上运行相同的错误(在我运行服务器的形式在Linux上的eclipse之前)。这使我更加困惑...... – Caroline 2012-04-21 14:01:46

回答

0

我发现了这个问题。安全管理器未正确加载。由于某些原因,Eclipse不需要安全管理器来成功运行