11번째 줄의 포트를 신경써주시고.. 이클립스 컴파일후 재 컴파일 하면 문제가 생깁니다. 프로세스가 정상적으로 종료되지 않고 포트가 열려있어서 발생하는 문제입니다.!

해결방법은.. 프로세스종료

 

import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;

public class Server_Socket {
	public static void main(String[] args) {
		ServerSocket serverSocket = null;
		Socket socket = null;
		try {
			serverSocket = new ServerSocket(9000);
			System.out.println("1 st");
			socket = serverSocket.accept();
			System.out.println("2 st");
			InputStream in = socket.getInputStream();
			OutputStream out = socket.getOutputStream();
			byte arr[] = new byte[100];
			in.read(arr);
			System.out.println(new String(arr));
			String str = "hello world";
			out.write(str.getBytes());
		} catch (Exception e) {  
			// TODO: handle exception
		}

		// finally 윗쪽의 예외 처리가 있음에도 불구하고 무조건 실행해주는 구문
		finally {
			try {
				socket.close(); //socket. 그렇지 않으면 포트 열어져 있음
			} catch (Exception ignored) {

			}
			try {
				serverSocket.close();
			} catch (Exception ignored) {

			}
		}
	}
}