[Error] Port 8080 was already in use

2025. 11. 11. 08:46Dev./Error.

728x90
반응형

문제

새로운 스프링 프로젝트 테스트 실행시 다음과 같은 오류가 콘솔창에 뜸

Port 8080 is already in use
Identify and stop the process that's listening on port 8080 or configure this application to listen on another port.

8080 포트를 이미 다른 프로세스에서 사용 중이라는 뜻

나는 분명 이전 프로젝트 서버를 껏는데?

이전 프로젝스 서버 죽이고 새로운 프로젝트를 실행했다.

개발 중 의도치않게 포트가 점유된 상태로 서버가 백그라운드로 남는 경우가 종종 있다고 한다.

appication.properties 파일에서 포트를 예를들어 8081 로 바꿔줄수도 있지만 정석대로 원인을 해결하는 방법으로 정함.

상황 진단

터미널에 현재 8080 포트를 사용중인 프로세스 확인

lsof -i :8080
  • losf (List Open Files) : 어떤 프로세스가 어떤 포트 사용 중인지

아니?? java 프로세스가 8080 점유중임

COMMAND   PID       USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME
java    78892 macbookpro   97u  IPv6        TCP *:http-alt (LISTEN)
  • PID : port ID

해결 방법

이전에 확인한 프로세스의 PID를 붙여서 포트 킬

kill -9 78892
  • kill: 실행중인 프로세스 종료
  • -9 : 강제 종료 (SIGKILL)

킬 후 다시 프로세스 확인

lsof -i :8080

이제야 성공적으로 8080을 사용하는 프로세스가 없다

이후 프로젝트 run 실행하면 잘 켜짐

728x90
반응형