Java简单的TCP服务器端程序,在eclipse中运行的结果,总是跟ultraedit编写CMD窗口里运行有所不同。
在eclipse中运行总是出现如下信息:Exceptioninthread"main"java.net.BindException:Addressalreadyinuse...
在eclipse中运行总是出现如下信息:
Exception in thread "main" java.net.BindException: Address already in use: JVM_Bind
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359)
at java.net.ServerSocket.bind(ServerSocket.java:319)
at java.net.ServerSocket.<init>(ServerSocket.java:185)
at java.net.ServerSocket.<init>(ServerSocket.java:97)
at TCPServer.main(TCPServer.java:6)
而且在UE中编写好的程序放在eclipse中第一运行时正常的,从第二次运行开始,也会出项上述信息,而且在CMD窗口运行也不再正常。
我试着运行了好几个不同的TCP服务器端程序,结果都一样。客户端的程序都没有问题。
附上服务器端程序如下:
第一个
import java.io.*;
import java.net.*;
public class TCPServer {
public static void main(String[] args) throws Exception {
int n=1;
ServerSocket ss=new ServerSocket(6666);
while(true){
Socket s=ss.accept();
InetAddress sd=s.getInetAddress();
System.out.println();
System.out.println();
System.out.println();
System.out.println("****************连接建立****************");
System.out.println("NO."+n+" Accepted. ");
System.out.println("Address: "+sd);
System.out.println("Port: "+s.getPort());
System.out.println("****************完成通信****************");
System.out.println();
System.out.println();
System.out.println();
n++;
}
}
}
第二个源程序:
import java.io.*;
import java.net.*;
public class ChatServer {
public static void main(String[] args) throws Exception {
ServerSocket ss = new ServerSocket(8888);
while (true) {
// @SuppressWarnings("unused")
Socket s = ss.accept();
System.out.println("A client connetct!");
}
}
} 展开
Exception in thread "main" java.net.BindException: Address already in use: JVM_Bind
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359)
at java.net.ServerSocket.bind(ServerSocket.java:319)
at java.net.ServerSocket.<init>(ServerSocket.java:185)
at java.net.ServerSocket.<init>(ServerSocket.java:97)
at TCPServer.main(TCPServer.java:6)
而且在UE中编写好的程序放在eclipse中第一运行时正常的,从第二次运行开始,也会出项上述信息,而且在CMD窗口运行也不再正常。
我试着运行了好几个不同的TCP服务器端程序,结果都一样。客户端的程序都没有问题。
附上服务器端程序如下:
第一个
import java.io.*;
import java.net.*;
public class TCPServer {
public static void main(String[] args) throws Exception {
int n=1;
ServerSocket ss=new ServerSocket(6666);
while(true){
Socket s=ss.accept();
InetAddress sd=s.getInetAddress();
System.out.println();
System.out.println();
System.out.println();
System.out.println("****************连接建立****************");
System.out.println("NO."+n+" Accepted. ");
System.out.println("Address: "+sd);
System.out.println("Port: "+s.getPort());
System.out.println("****************完成通信****************");
System.out.println();
System.out.println();
System.out.println();
n++;
}
}
}
第二个源程序:
import java.io.*;
import java.net.*;
public class ChatServer {
public static void main(String[] args) throws Exception {
ServerSocket ss = new ServerSocket(8888);
while (true) {
// @SuppressWarnings("unused")
Socket s = ss.accept();
System.out.println("A client connetct!");
}
}
} 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询