[Troubleshooting] Invariant Violation: `new NativeEventEmitter()` requires a non-null argument., js engine: hermes

Moon Hayden·2023년 9월 6일
0
post-thumbnail

React Native빌드 완료 후 터미널에서 Invariant Violation: new NativeEventEmitter() 에러를 만나 당황스러웠던 React Natvie 개발자들이 많이 있을것으로 생각된다.

이 에러는 React Native 애플리케이션의 진입점(entry point) 파일을 찾지 못하거나, JavaScript 번들이 손상되었거나, React Native 로딩 시 초기화 오류가 발생했을 때 나타난다고 한다.

이때는 과감하게 아래 순서대로 npm install, pod install을 다시 해주도록하자
1. node_modules 삭제
2. package-lock.json 삭제
3. pods && podfile.lock 삭제
4. pod deintegrate
5. pod cache clean --all
6. npm install && pod install
7. Xcode 에서 cmd+shift+k
8. cmd + b

-------추가할 내용

위 과정을 다 따라 했지만 여전히 같은 에러가 발생하는 케이스가 발생 하였다.
이 경우에는 사용하고 있는 라이브러리를 올바르게 적용하였는지 확인해 볼 필요가 있다.

물론 수십개 에서 수백개 까지의 라이브러리를 사용하는 큰 프로젝트의 경우 라이브러리를 하나하나 다 알아볼수는 없을 것이다.

이럴 경우에는 현대 사회의 기술인 AI GPT를 사용해보도록 하자.
뤼튼의 GPT-4를 키고 index.js와 App.tsx의 코드를 공유하였다. 그리고 아래와 같은 답변을 받을수 있었다.

GPT에서 제시해준 라이브러리들을 확인해본 결과 adbrix의 적용 방식이 바뀌어서 발생한 문제였다.

해결 완료 !

profile
매일 꾸준히 성장하는 마라토너 개발자 🏃‍♂️

0개의 댓글