강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

하이헬로우님의 프로필 이미지
하이헬로우

작성한 질문수

아바타 커뮤니티앱 만들기 (React Native Expo)

[7-5] 개발 빌드 실행 및 알림 수신하기 (Android + iOS)

EAS 빌드 시, expo 53, react-native0.79, react18기반 라이브러리 의존성 충돌

해결된 질문

작성

·

125

·

수정됨

0

개발환경 및 상황

window, Node 22.14.0, react: ^19.0.0, react-native: 0.79.2, expo ^53.0.9

 

SDK 53으로 올리면서 react19이 강제 되어, react19를 사용하였습니다. 대부분의 라이브러리들이 react18을 기반으로 되어있어 의존성 충돌이 일어나, 강의에서 사용된 라이브러리는 --legacy-peer-deps로 설치하여 개발은 가능하였습니다.

 

문제

라이브러리 사용까지는 상관없었는데, '[7-5] 개발빌드 실행 및 알림 수신하기'의 EAS 빌드를 위하여 eas build --profile development (--clear-cache) 를 사용하였는데 npm ci단계에서 peer dependecy충돌로 빌드가 실패하고있습니다.

 

에러 메세지

expo build detail

  • Install dependencies

Running "npm ci" in /home/expo/workingdir/build directory
npm warn ERESOLVE overriding peer dependency
npm warn While resolving: @react-native/virtualized-lists@0.79.2
npm warn Found: @types/react@18.3.21
npm warn node_modules/@types/react
npm warn   dev @types/react@"~18.3.12" from the root project
npm warn   4 more (@radix-ui/react-compose-refs, @radix-ui/react-slot, ...)
npm warn
npm warn Could not resolve dependency:
npm warn peerOptional @types/react@"^19.0.0" from @react-native/virtualized-lists@0.79.2
npm warn node_modules/@react-native/virtualized-lists
npm warn   @react-native/virtualized-lists@"0.79.2" from react-native@0.79.2
npm warn   node_modules/react-native
npm warn
npm warn Conflicting peer dependency: @types/react@19.1.8
npm warn node_modules/@types/react
npm warn   peerOptional @types/react@"^19.0.0" from @react-native/virtualized-lists@0.79.2
npm warn   node_modules/@react-native/virtualized-lists
npm warn     @react-native/virtualized-lists@"0.79.2" from react-native@0.79.2
npm warn     node_modules/react-native
npm error code ERESOLVE
npm error ERESOLVE could not resolve
npm error
npm error While resolving: react-native@0.79.2
npm error Found: @types/react@18.3.21
npm error node_modules/@types/react
npm error   dev @types/react@"~18.3.12" from the root project
npm error   peerOptional @types/react@"*" from @radix-ui/react-compose-refs@1.1.2
npm error   node_modules/@radix-ui/react-compose-refs
npm error     @radix-ui/react-compose-refs@"1.1.2" from @radix-ui/react-slot@1.2.0
npm error     node_modules/@radix-ui/react-slot
npm error       @radix-ui/react-slot@"1.2.0" from expo-router@5.0.7
npm error       node_modules/expo-router
npm error         expo-router@"~5.0.7" from the root project
npm error   3 more (@radix-ui/react-slot, ...)
npm error
npm error Could not resolve dependency:
npm error peerOptional @types/react@"^19.0.0" from react-native@0.79.2
npm error node_modules/react-native
npm error   react-native@"0.79.2" from the root project
npm error   peer react-native@"*" from @expo/metro-runtime@5.0.4
npm error   node_modules/@expo/metro-runtime
npm error     peerOptional @expo/metro-runtime@"*" from expo@53.0.9
npm error     node_modules/expo
npm error       expo@"^53.0.9" from the root project
npm error       25 more (expo-application, expo-asset, expo-blur, expo-constants, ...)
npm error     1 more (expo-router)
npm error   30 more (@expo/vector-icons, @react-native/virtualized-lists, ...)
npm error
npm error Conflicting peer dependency: @types/react@19.1.8
npm error node_modules/@types/react
npm error   peerOptional @types/react@"^19.0.0" from react-native@0.79.2
npm error   node_modules/react-native
npm error     react-native@"0.79.2" from the root project
npm error     peer react-native@"*" from @expo/metro-runtime@5.0.4
npm error     node_modules/@expo/metro-runtime
npm error       peerOptional @expo/metro-runtime@"*" from expo@53.0.9
npm error       node_modules/expo
npm error         expo@"^53.0.9" from the root project
npm error         25 more (expo-application, expo-asset, expo-blur, expo-constants, ...)
npm error       1 more (expo-router)
npm error     30 more (@expo/vector-icons, @react-native/virtualized-lists, ...)
npm error
npm error Fix the upstream dependency conflict, or retry
npm error this command with --force or --legacy-peer-deps
npm error to accept an incorrect (and potentially broken) dependency resolution.
npm error
npm error
npm error For a full report see:
npm error /home/expo/.npm/_logs/2025-06-23T04_14_21_012Z-eresolve-report.txt
npm error A complete log of this run can be found in: /home/expo/.npm/_logs/2025-06-23T04_14_21_012Z-debug-0.log
npm ci exited with non-zero code: 1

 

 

시도 했던 방법

  • npm ci 우회

npm ci 를 우회하기 위하여 pacakge.json에 npm install --legacy-peer-deps 로 우회하는 쉘스크립트도 사용해봤는데, (chmod 로 권한 설정 & LF 줄바꿈) permission denied 로 빌드되지 않았습니다. "scripts": {

"start": "expo start",

"eas-build-pre-install": ".eas/build/pre-install.sh", .eos/build/pre-install.sh ,

...}
https://github.com/miloe2/rn-practice/commit/16f0c2448cd138eb63ab7385dea3b7c0d89b50e9

 

  • 라이브러리 업데이트

타입만 우선적으로 업데이트하였는데( types/@react18.3.12 => 19.1.8, )

그 외에도 react19가 지원하지 않는 다른 라이브러리들 (react-test-render 등)이 있어서 실패.

 

질문 작성시 꼭 참고해주세요

  • 에러 메세지에서 단서를 찾을 수 있는 경우가 많습니다. 에러 메세지를 읽고 한번 검색해보시는것을 추천드립니다.

  • 질문글을 작성하실때는, 현재 문제(또는 에러)와 코드나 github을 첨부해주세요.

  • 개발중인 OS, ReactNative, Node 버전 등의 개발환경을 알려주셔야합니다.

  • 에러메세지는 일부분이 아닌 전체 상황을 올려주세요. 일부만 보여주시면 답변이 어렵습니다.

  • 에러 잘라서 올리시면 안됩니다!

(에러 일부만 자르거나 일부만 복사하지말아주세요)

 

답변 1

0

Kyo님의 프로필 이미지
Kyo
지식공유자

강의와 동일한 라이브러리와 코드를 사용하셨나요?

제가 expo53버전, rn0.79.2버전으로 개발 빌드를 해보았는데 성공했습니다.

[Note] Expo 53 버전 안내 강의 > 수업자료에 코드 공유해드릴테니 참고해보시겠어요?

 

하이헬로우님의 프로필 이미지
하이헬로우

작성한 질문수

질문하기