当我在Windows 7 Professional系统中运行以下Java程序时,我收到以下异常
import java.io.IOException;
import java.net.ServerSocket;
public class ServerSocketTest {
public static void main(String[] args) {
init();
}
public static void init() {
try {
ServerSocket sock = new ServerSocket();
sock.setSoTimeout(60000);
sock.bind(null);
System.out.println("Listening for external workers on port "
+ sock.getLocalPort());
} catch (IOException e) {
System.out.println("Exception occured");
e.printStackTrace();
}
}
}
异常详情:
Exception occured
java.net.BindException: Cannot assign requested address: JVM_Bind
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.PlainSocketImpl.bind(Unknown Source)
at java.net.ServerSocket.bind(Unknown Source)
at java.net.ServerSocket.bind(Unknown Source)
at ServerSocketTest.init(ServerSocketTest.java:16)
at ServerSocketTest.main(ServerSocketTest.java:8)
例外情况发生在下面一行
sock.bind(null); // If the address is null, then the system will pick up an ephemeral port and a valid local address to bind the socket.
我试图完全禁用Windows防火墙,互联网安全软件,但是,我一直得到同样的例外。当我在Windows任务管理器中结束以下过程时,我已成功运行该程序,但是,我的系统在一分钟内重新启动。所以,看起来,这个过程对于Windows来说是必须的。
lsass.exe(本地安全机构进程) C:\ Windows \ System32下 服务名称:VaultSvc(凭证管理员)
有任何建议,如何解决此错误?