在 Windows 上启动多播 java 套接字时,出现以下错误(防火墙已停用):
java.security.AccessControlException:在 java.security.AccessController.checkPermission(Unknown Source) 在 java.security.AccessControlContext.checkPermission(Unknown Source) 的访问被拒绝 (java.net.SocketPermission 230.0.0.1 connect,accept,resolve)。 lang.SecurityManager.checkPermission(Unknown Source) at java.lang.SecurityManager.checkMulticast(Unknown Source) at java.net.MulticastSocket.joinGroup(Unknown Source) at ch.uzh.ifi.group10.client.ServiceBrowser.(ServiceBrowser.java :49) 在 ch.uzh.ifi.group10.server.RMIServer.startServer(RMIServer.java:176) 在 ch.uzh.ifi.group10.server.RMIServer.main(RMIServer.java:279)
似乎我无法加入多播组,因为程序没有套接字的权限。有趣的是,相同的代码在 linux (ubuntu 11.10) 上没有任何问题。我还尝试向 security.policy 文件添加套接字权限(Permission java.net.SocketPermission "230.0.0.1", "connect, accept, listen, resolve";)这也没有帮助。
我被困住了,因为我找不到任何其他可能出现问题的地方或我错过了什么......有什么想法吗?