[React] npm install 시 의존성 충돌 오류 해결 방법

2025. 6. 1. 01:59·개발 (Development)/React

문제 상황

npm install 명령어를 실행했을 때 다음과 같은 에러가 발생했습니다.

npm ERR! code ERESOLVE
npm ERR! ERESOLVE unable to resolve dependency tree
npm ERR! While resolving: web@0.26.0
npm ERR! Found: react@18.3.1
npm ERR! Could not resolve dependency:
npm ERR! peer react@"0.14.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" from react-masonry-component@6.3.0

에러 원인 분석

  • 현재 프로젝트에서는 react@18.3.1을 사용하고 있음.
  • 하지만 react-masonry-component@6.3.0은 react@0.14 ~ 17까지만 지원하고 있어 충돌이 발생.
  • 이로 인해 npm이 의존성 트리를 해결하지 못하고 설치가 실패함.

해결 방법

1. --legacy-peer-deps 옵션 사용

가장 간단하게는 아래 명령어로 의존성 설치를 강행할 수 있습니다.

npm install --legacy-peer-deps

이 옵션은 peer dependency 충돌을 무시하고 설치를 진행합니다. 다만, 설치 이후 실행 시 호환성 문제가 생길 수 있으므로 기능 테스트는 꼭 필요합니다.

2. react-masonry-component 제거 또는 대체

react-masonry-component가 필수 요소가 아니라면 패키지를 제거하거나, React 18을 지원하는 대체 라이브러리로 교체하는 것이 바람직합니다.

예를 들어 다음과 같은 라이브러리들을 사용할 수 있습니다:

  • masonry-layout
  • react-masonry-css

3. React 버전을 낮추기

프로젝트 전체에서 React 18이 반드시 필요한 것이 아니라면, React 버전을 17로 낮추는 것도 하나의 방법입니다.

npm install react@17 react-dom@17

하지만 이 방식은 다른 라이브러리들과의 충돌 가능성이 높기 때문에 주의가 필요합니다.

결론

방법 설명 추천도
--legacy-peer-deps 사용 충돌 무시하고 설치 ★★★★☆
라이브러리 교체 masonry 관련 라이브러리를 React 18 호환으로 대체 ★★★★★
React 버전 다운그레이드 전체 호환성에 주의 필요 ★★☆☆☆
반응형

'개발 (Development) > React' 카테고리의 다른 글

[React] TodoList - 컴포넌트 만들기  (0) 2022.04.21
[React] 프로젝트 환경 설정  (0) 2022.04.04
'개발 (Development)/React' 카테고리의 다른 글
  • [React] TodoList - 컴포넌트 만들기
  • [React] 프로젝트 환경 설정
LoopThinker
LoopThinker
모르는 것을 알아가고, 아는 것을 더 깊게 파고드는 공간
  • LoopThinker
    CodeMemoir
    LoopThinker
  • 전체
    오늘
    어제
    • 분류 전체보기 (192) N
      • 개발 (Development) (128) N
        • Algorithm (1)
        • Angular (1)
        • AWS (4)
        • DeepSeek (2)
        • Docker (6)
        • Git (3)
        • Java (23) N
        • JavaScript (4)
        • Kafka (4)
        • Kubernetes (4)
        • Linux (6)
        • PostgreSQL (33)
        • Python (19) N
        • React (3)
        • TypeScript (3)
        • Vue.js (5)
        • General (7) N
      • 데이터 분석 (Data Analysis) (1)
      • 알고리즘 문제 풀이 (Problem Solving.. (27)
      • 자격증 (Certifications) (24)
        • ADsP (14)
        • 정보처리기사 (4)
        • Linux Master (5)
        • SQLD (1)
      • 기술 동향 (Tech Trends) (10)
      • 기타 (Others) (2)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    AWS
    자바
    MyBatis
    docker
    Vue
    Linux
    Linux master
    리눅스 마스터
    리눅스 마스터 2급
    JSON
    java
    리눅스 마스터 2급 2차
    pandas
    데이터분석
    오답노트
    PostgreSQL
    백준자바
    DevOps
    deepseek
    python
    Vue.js
    백준
    ADsP
    Kubernetes
    백준알고리즘
    javascript
    백준온라인저지
    springboot
    Kafka
    typescript
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
LoopThinker
[React] npm install 시 의존성 충돌 오류 해결 방법
상단으로

티스토리툴바