Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
客户端/服务器java应用程序中的JVM\u绑定错误_Java_Sockets - Fatal编程技术网

客户端/服务器java应用程序中的JVM\u绑定错误

客户端/服务器java应用程序中的JVM\u绑定错误,java,sockets,Java,Sockets,我正在尝试构建一个java微博应用程序 我已经完成了代码,但由于以下错误,无法连接到我自己的计算机(我搜索了它,有人说我需要更改端口号。我更改了端口号,但什么也没发生) 以下是服务器的代码: public class server extends Thread { public Socket client = null; public ServerSocket server = null; private int port = 4444; public void ru

我正在尝试构建一个java微博应用程序 我已经完成了代码,但由于以下错误,无法连接到我自己的计算机(我搜索了它,有人说我需要更改端口号。我更改了端口号,但什么也没发生)

以下是服务器的代码:

public class server extends Thread {
    public Socket client = null;
    public ServerSocket server = null;
    private int port = 4444; 

public void run(){  
    while (true){ //loop waits for incomming connection
        try { //start the server and listen to a port
                server = new ServerSocket(port);
            }catch (IOException e){
                System.err.println(e);
                System.exit(-1);
            }

            try { //establish a connection when receiving request
                client = server.accept();
            }catch (IOException e){
                System.err.println(e);
                System.exit(1);
            }

            Thread t = new Thread(new Connection(client));
            t.start();
        }
    }
}
这是启动服务器并监听端口4444的代码

Server server = new Server();
server.start(); //to listen to a port

谢谢

您必须在进入循环之前创建ServerSocket。目前,您试图在每次迭代中创建它,这是没有意义的,而且您没有关闭它,因此第二次创建失败。

4444。默认端口总是4444谢谢不,我的意思是,这个错误意味着端口4444已经在使用中。您还尝试了哪些其他端口?您可以使用“netstat-pan”列出系统中使用的端口,但4444不用于我的计算机上的任何端口。或者这意味着我无法连接到自己的计算机,但必须使用不同的com?您可以连接到自己的计算机。从cmd控制台尝试使用netstat命令,是否确定不尝试启动应用程序的多个副本?在循环外创建服务器套接字并接受循环内的连接。完成或退出程序时,请关闭所有插槽。
Server server = new Server();
server.start(); //to listen to a port