2022-10-09 작성

톰캣 실행시, 이미 사용중인 8080 포트 에러(Port 8080 is already in use) 해결

문제 발생

톰캣을 실행시키는데 다음과 같은 에러가 발생한다. 

org.springframework.boot.web.server.PortInUseException: Port 8080 is already in use

말 그대로 이미 8080 포트가 사용 중이라고 뜨는 것인데, 이럴 경우에는 현재 8080 포트로 동작중인 프로세스를 강제로 종료시키면 된다.

해결 방법

윈도우+R를 입력하여 cmd 창을 열어보자. netstat 라는 명령어를 입력하면 현재 TCP/IP 네트워크 연결 상태를 확인할 수 있다. 이제 좀 더 세부적으로 확인하기 위해 Ctrl+C를 눌러 되돌아간 후 netstat -ano 명령어를 입력하여 어떤 프로세스가 8080 포트를 사용 중인지 확인해 보자.

  • a : 모든 연결 및 수신 대기 포트를 표시
  • n : 주소 및 포트 번호를 숫자 형식으로 표시
  • o : 각 연결의 소유자 프로세스 ID를 표시

아래와 같이 26420이라는 PID(프로세스 아이디)의 프로세스가 8080 포트를 사용 중인 것을 볼 수 있다. 

이 프로세스를 종료시키자. 프로세스는 taskkill 명령어를 사용하며, 종료하고 싶은 PID를 함께 입력하면 원하는 프로세스를 종료할 수 있다.

taskkill /f /pid 26420