java.net.BindException: Address already in use: JVM_Bind
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:383)
at java.net.ServerSocket.bind(ServerSocket.java:328)
at java.net.ServerSocket.<init>(ServerSocket.java:194)
at java.net.ServerSocket.<init>(ServerSocket.java:106)
at com.chat.net.ChatServer$BroadcastServer$WaitingSocket.run(ChatServer.java:66)
at java.lang.Thread.run(Thread.java:662)
그래서 다음과 같이 입력하면 됩니다.
netstat -ano
-a : 모든 포트를 표시해줍니다.
-n : IP주소:포트 형태로 보여줍니다. (예 - 192.168.0.22:1234)
-o : PID (프로세스 ID)를 표시해줍니다. (해당 프로그램 중지시에 사용)
주소가 이미 사용중에 있다!
즉 내가 요구한 포트 6789가 사용중이라 안된다는 것이다!
따라서 그 포트를 닫아주어야 해결된다.
1. cmd창에서 netstat -o -a 를 실행한다.
2. 사용중인 포트들에 대한 정보들이 쫙 나온다.
3. 이중 해당하는 포트번호(지금의 경우 6789)를 찾아 PID를 기억해둔다.
4. 작업관리자를 실행하여 프로세스탭 선택
5. 기억해둔 PID를 찾아 해당 PID의 프로세스를 "프로세스끝내기" 한다.
리소스 모니터에서 javaw.exe 제거