Servlet 파일을 작성한 후, 이클립스에서 Run on server를 돌렸을 때
Tomcat이 이미 사용 중이라는 에러 메세지(Tomcat ~~ already in use)가 출력되었을 때의 해결 방법
이 경우 해당 포트가 사용 중인 것으로, 커맨드창에서 해당 포트를 강제로 종료시킨 다음 Run on Server를 돌리면
정상적으로 실행됩니다.
1. 커맨드창에 들어가서(커맨드창 여는 방법: 윈도우 버튼을 누른 뒤 cmd 입력 및 엔터)
2. netstat -ao 를 입력합니다.
3. 그러면 위 캡쳐와 같이 포트별로 사용중인 PID들이 나타납니다.
4. Tomcat의 설정을 따로 만지지 않았다면 사용하는 포트는 8080 입니다. 8080 포트를 사용하고 있는 PID를 확인합니다.
8080 포트는 현재 9296 PID(Process ID)를 가진 곳에서 사용 중입니다.
이를 강제 종료하기 위해 종료 커맨드를 입력합니다.
다시 아무 키나 누르면 입력 창으로 넘어옵니다. 입력 창에
5. taskkill /f /pid PID번호 를 입력해 줍니다. 제 경우에는 PID 9296이 Tomcat을 사용 중이었으므로
taskkill /f /pid 9296 을 입력했습니다. taskkill 은 작업을 종료하는 것이고, /f는 강제로(force) 종료한다는 의미입니다.
6. 프로세스가 정상 종료되었다면, 다시 이클립스로 돌아가 Run on Server를 눌러 가동을 확인합니다.
** 간혹가다 프로세스 종료를 시도했을 때 '액세스가 거부되었습니다' 라는 에러 메세지가 출력되는 경우가 있는데,
이 경우에는 커맨드창을 관리자 권한으로 실행하면 됩니다.
>> 커맨드창 관리자 권한으로 실행하기
윈도우 버튼을 누른 상태에서 cmd를 입력하고, 명령 프롬프트(cmd)에 오른쪽 마우스를 클릭한 뒤 '관리자 권한으로 실행' 을 클릭합니다.
이 방법은 Tomcat의 종료에만 사용되는 것은 아니고, 특정 포트를 강제로 죽일 때 두루 사용될 수 있습니다.
검색을 위한 에러 메시지 예제>
Port 8080 required by Tomcat v8.5 Server at localhost is already in use. There may already be running in another process, or a system process may be using the port. To start this server you will need to stop the other process or change the port number(s).
검색어> Tomcat 8080 사용중, Tomcat already in use 8080
'DevOps' 카테고리의 다른 글
[이럴땐이렇게] 리눅스 서버 disk full인데 지울거 없을때 임시조치 / linux disk full (0) | 2021.05.15 |
---|---|
CI/CD 로그 시각화를 위한 ELK stack with Jenkins (1) (0) | 2021.05.14 |
Load Balancing : L2, L3, L4, L7의 차이 (0) | 2021.05.09 |
Nexus 구성 - Proxy Central Repository 외에 추가로 Local 의존성 추가하기 (0) | 2020.12.06 |
[이럴땐이렇게] Excel이 응답없음 및 무한로딩 상태가 될 때, 데이터 입력 후 느려질 때 (0) | 2020.05.14 |