티스토리 뷰
IntelliJ로 개발을 하다 보면 업데이트의 영향인지 갑자기 앱이 종료될 때가 있습니다.
(현재 저는 Mac OS는 Big Sur 11.4 버전을, IntelliJ는 2021.1.2 버전을 사용하고 있는데 아주 환장의 콜라보 상태입니다)
로컬에서 스프링 부트 애플리케이션을 개발하면서 별 다른 설정 없이 기동시켰다면 8080 포트로 앱이 실행되었을 거고 갑자기 앱이 종료되면 이 프로세스까지 같이 종료되지 않기 때문에, 다시 앱을 켜고 스프링 부트 앱을 실행시키면
Web server failed to start. Port 8080 was already in use.
이런 에러 로그를 마주하게 됩니다.
이럴 땐 터미널 내에서 아주 간단하게 해당 포트를 물고있는 프로세스를 종료할 수 있습니다.
jaime > lsof -n -i4TCP:8080
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 55828 a1101243 87u IPv6 0xf4af32371e8a04bf 0t0 TCP *:http-alt (LISTEN)
jaime > kill -9 55828
lsof
명령으로 포트를 사용중인 PID를 찾고 해당 kill
명령어로 프로세스를 종료하는 것으로 다른 여러 가지 방법들이 있지만 이 방법이 가장 간단하고 빠른 거 같네요.
이렇게 끝내우면 아쉬우니 쉘 스크립트로 작성을 해봅시다.
/usr/local/bin 디렉터리로 이동해 파일을 생성합니다.
전 stop process with port의 약자인 spwp로 생성하였습니다.
jaime ~ > cd /usr/local/bin
jaime /usr/local/bin > vi spwp
vi로 열어 아래 스크립트를 입력합니다.
#!/bin/bash
touch temp.text
lsof -n -i4TCP:$1 | awk '{print $2}' > temp.text
pidToStop=`(sed '2q;d' temp.text)`
> temp.text
if [[ -n $pidToStop ]]
then
kill -9 $pidToStop
echo "process with $1 port is stopped"
else
echo "no process running on $1 port"
fi
rm temp.text
저장 후 종료한 뒤 외부에서 접근 가능하게 권한을 바꿔줍니다.
jaime usr/local/app > chmod 755 spwp
이제 어느 위치에서든 아래 명령어를 통해 포트를 사용 중인 프로세스를 종료할 수 있습니다.
spwp <PORT>
실행 화면
jaime ~ > spwp 8080
process with 8080 port is stopped
jaime ~ > spwp 8080
no process running on 8080 port
'macOS' 카테고리의 다른 글
터미널 앱 Warp 추천(및 사용 후기) (4) | 2022.07.19 |
---|---|
zsh에서 git 언어가 갑자기 한글로 바뀌었다면?(다시 영어로 바꾸기) (0) | 2021.08.11 |
M1 iMac 설정 (0) | 2021.07.08 |
맥북에 그레이들(Gradle) 설치 (0) | 2019.09.27 |
MacBook에서 블루스택 창크기 조절하기 (0) | 2019.09.27 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- r
- 함께 자라기
- spring boot jwt
- 헥사고날 아키텍처
- 함께 자라기 후기
- JSON
- 스프링부트
- Jackson
- intellij
- 클린 아키텍처
- Java
- @ManyToOne
- 스프링 부트 회원 가입
- QueryDSL
- Spring Boot Tutorial
- 스프링 부트 튜토리얼
- Spring Boot
- Linux
- spring boot application
- Spring Boot JPA
- spring boot app
- leetcode
- Spring Data JPA
- 스프링 부트
- 스프링 데이터 jpa
- JPA
- 알고리즘
- 스프링 부트 애플리케이션
- proto3
- gRPC
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함