Spring/MVC

[Spring] Port 8080 was already in use 애러 포트 변경해 해결하기

Dev.Cho 2024. 4. 8. 07:01

문제 원인

스프링 애플리케이션은 웹 서버를 내장하기 때문에, 하나의 포트에 하나의 스프링 애플리케이션만 실행할 수 있다. 조금 더 자세히 이야기 하면 하나의 포트에 둘 이상의 스프링 애플리케이션이 실행된다면, 사용자로부터 요청을 받았을 때 어떤 애플리케이션에서 요청을 처리해야 할지 알 수 없기 때문에, 하나의 포트에서는 하나의 스프링 애플리케이션만 실행돼야 한다.

이 때문에 이미 스프링 애플리케이션이 사용하고 있는 포트를 다른 스프링 애플리케이션이 사용하려고 하면 다음과 같은 오류가 뜬다.

*보통 스프링 애플리케이션의 기본 포트는 8080번으로 설정되어 있기 때문에 여기서는 8080을 사용 중이라는 오류가 뜨는 상황을 보여준다.

 

Web server failed to start. Port 8080 was already in use.
웹 서버 실행이 실패했습니다. 포트 8080번은 이미 사용 중입니다.

 

애러 화면은 그림1과 같이 나온다.

 

그림1. 애러 화면

 

문제 해결 방법

이 문제를 해결하기 위해서는 스프링 애플리케이션이 실행되는 포트를 변경하면 된다. 포트를 변경하는 방법은 간단하다. resources 폴더의 application.properties 폴더에 들어가 server.port 를 추가한 후 값을 8081로 설정하면 된다.

 

그림2. 포트 변경

 

이렇게 server.port 값을 변경하면, 스프링 애플리케이션이 실행될 때 해당 값을 읽어 웹 서버가 해당 포트를 사용하도록 만든다. 

 

따라서 위와 같이 변경 후 애플리케이션을 다시 실행하면, 문제 없이 실행되는 것을 볼 수 있다.

그림3. 정상 실행되는 스프링 애플리케이션

반응형