개발 환경
- M1 Macbook Pro (2021)
- macOS Ventura 13.2.1
- react@18.2.0
- react-native@0.71.4
Problem
여느 때와 같이 "npx react-native start" 를 통해 RN 앱을 실행시켜 개발을 진행하려 했다. 그런데, 이번에 ""listen EADDRINUSE: address already in use :::8081." 에러가 나타나면서, RN 앱을 실행시킬 수가 없었다.
에러의 내용은 대강 "주소가 이미 사용되고 있어서 지금 ReactNative 를 시킬 수 없다" 라는 뜻인 것 같았다. 주소에서도 포트(Port)가 이미 사용 중이라 새로운 RN 앱을 실행할 수 없는 것처럼 보인다. 바로 구글링을 통해 해결법을 찾았고, 바로 찾을 수 있었다.
Solution
1) lsof -i :[PORT_NUMBER]
현재 필자가 맞닥뜨린 에러에서 나타난 중복 Port 는 8081번이다. 우선, 8081 번 포트가 정말로 사용 중인지 찾아보는 명령어를 입력한다.
lsof -i :8081
8081 번 포트가 정말 사용 중인 것을 확인할 수 있다. 정확히는 해당 포트에 이미 프로세스(Process) 가 사용 중인 것이다. 이제 해당 포트를 사용 중인 프로세스를 해제하는 명령어를 입력해준다. 이 때, 위 명령어를 통해 얻은 결과에서 "PID(ProcessID)" 를 확인해줘야한다.
2) kill -9 [PID]
"kill -9" 명령어를 통해 원하는 프로세스를 해제할 수 있다. 이 때, 명령어의 대상은 위에서 확인한 "PID" 이다.
kill -9 13906
명령어가 정상적으로 동작했다면, 다시 "lsof" 명령어를 통해 8081 번 포트에 프로세스가 자리를 차지하고 있는지 확인한다.
이제 다시 ReactNative 를 실행하면, 정상적으로 서버가 열리는 것을 확인할 수 있다.
'ReactNative' 카테고리의 다른 글
[React-Native] iOS 빌드 에러(Compile C 에서 빌드 멈춤) / error: 'value' is unavailable (0) | 2023.04.07 |
---|---|
[React-Native] 3. React Native WebView 띄우기 (2) | 2023.03.26 |
[React-Native] 2. 기본 프로젝트 만들기 및 오류 정리 (0) | 2023.03.20 |
[React-Native] Your Ruby version is 2.6.10, but your Gemfile specified 2.7.6 (0) | 2023.03.17 |
[React-Native] ReactNative 에서 Android Native 함수 호출 (0) | 2022.11.17 |