[React_Native] RN expo 안드로이드 something went wrong error

SEIMIN·2024년 2월 5일

리액트

목록 보기
3/3

초기세팅이라는것은 언제나 해도 귀찮은데다가
생각도 못한 에러가 나오면 사람 피말리는게 어쩔수 없는 것 같다.
expo로 해도 충분하겠다 싶어 세팅을 하던 도중 에뮬레이터가 ip주소를 받을수가 없단다.

그럴땐 뭐다?
공식문서가 짱인것 같다.

찾아봤다.
음..expo가 업데이트를 했고 이제 npx가 앞으로 붙어야한다라.

그런건 나랑 상관없다.
그래서 또 찾아봤다.

구글 짱.

에러가 나는 것이 cli-server-api에서 문제가 있는 모양이다.
에러해결을 해서 스샷은 없다.
이 블로그는 내 개발환경에서 또 찾기 힘드니까 기록하는 것도 용도이기 때문이다.

내 개발환경은 맥북 m2프로이다.터치바있는거.
필자는 굉장히 유용하게 쓰고 있는데 싫어하는 사람들이 있어서 자존심 센 애플에서 사용자 의견을 반영해서 없애버렸다라는 얘기도 있었다. 그런건 나랑 상관없다.

그리고 맥실리콘 react-native 이슈가 있긴 있었다.
그래봤자 SDK를 intel에서 arm64로 설치하는것 뿐이다.

생각해보면 당연한것이다.맥실리콘이니까.

환경변수도 잘지정해줬고 내 변수는 .zshrc니까 파일 들어가서 react-native공식문서에 친절히 써있는 환경변수만 넣어줘도 알아서 잘돌아간다.

하지만 나처럼 맥OS를 처음 써봤고 폴더찾기를 윈도우로 생각했다면 이 부분에서
시간 좀 많이 잡아먹을 것이다.
난 시간이 없다.얼른 해야한다면 상위폴더에서 Shift + cmd + . 을 누르면 바로 숨김폴더가 보일것이다.

그 안에서
export ANDROID_HOME=/Users/사용자/Library/Android/sdk
export PATH=PATH:PATH:ANDROID_HOME/emulator
export PATH=PATH:PATH:ANDROID_HOME/tools
export PATH=PATH:PATH:ANDROID_HOME/tools/bin
export PATH=PATH:PATH:ANDROID_HOME/platform-tools
추가 , 저장 그럼 끝.

아니면 기본 터미널이던지 iterm2던지 vscode터미널에서
nano ~/.zshrc에서 에디터 편집이 가능하다.

필자는 vscode가 제일 편하다.

자.그렇다면 이제 에러를 잡아보자.
에러가 나는 경로로 잘 들어가보자.

필자의 경우는

상당히 길어보이지만 별거 없다.
@react-native-community -> cli-server-api -> build -> statusPageMiddleware.js
이놈이다.

이제 한번 들여다보자.

여기에서 process.cwd())가 에러가 나고 있다.
터미널에서는 HTTP 헤더 X-React-Native-Project-Root가 문제있음으로 뜰것이다.
이것은 찾아보니 process.cwd가 로컬ip를 못들고와서 나 힘들엉 하는 그런것이였다.

그리고 또 찾아봤다.

new Url을 이용해서 새 url을 받아와서 캐시삭제를 한 후에 실행하면 돌아갈 것이라고 했다.
하지만 되지 않았다.

이번에는 invalid url을 뱉어냈다.

expo공식문서에서는 이제 전역으로 돌리지말고 로컬로 해라.라는 문구들이 나온다.
옳다커니.그렇다면 내 파일을 들고와서 내 와이파이를 잡아서 돌리면 되겠구나.
아주그냥 잡아돌리면 되겠구나라는 생각을 했다.

다시 또 찾아봤다.

빙고.

내 생각이 맞았다.

스샷처럼 url에 file://을 넣어야했다.
그리고 다시 실행.

잘돌아간다.
처음엔 대체 왜 안되는건지.

또 왜이리 시스템데이터를 100기가이상을 먹는지 이상했으나
찾아보고 결과를 도출한 결과 그냥 내가 문제였던것이다.

xcode의 경우는 알아서 잡아주기 때문에 에뮬레이터 돌리는데에는 문제가 없다.
자 이제 신명나게 개발을 하시면 되겠다.

모든 사용자들의 환경은 다르기 때문에 필자의 상황에서 맞춰 글을 썼다.
node 버전문제가 제일 이슈일테니 잘 맞는 버전을 사용하도록 하자.

profile
한다 코딩 나는 한다 코딩

0개의 댓글