Next.js 프로젝트를 설치하는 과정에서 발생할 수 있는 일반적인 오류들과 그 해결 방법에 대해 쉽고 간단하게 설명해 드리겠습니다.
프로젝트 생성 명령어(npx create-next-app)를 실행하거나 의존성 패키지를 설치(npm install)할 때 주로 이러한 문제들이 발생할 수 있습니다.
Next.js 프로젝트 설치 시 자주 발생하는 오류 및 해결 방법
1. code EEXIST 오류: 파일 또는 디렉토리가 이미 존재함
오류 유형:
주로 create-next-app 명령어를 실행할 때, 지정된 프로젝트 이름의 디렉토리가 이미 존재하거나, 시스템 캐시 충돌 등으로 인해 발생하는 오류입니다.
해결 방법:
프로젝트 이름 확인:
동일한 이름의 프로젝트 디렉토리가 이미 있는지 확인하고, 있다면 다른 이름을 사용하거나 기존 디렉토리를 삭제한 후 다시 시도해 보세요.
npm 캐시 문제 해결:
npm 캐시가 손상되었을 경우 발생하기도 합니다.
다음 명령어를 통해 캐시를 정리할 수 있습니다.
npm cache clean --force
npm cache verify
이후 다시 프로젝트 생성을 시도해 보세요.
2. 의존성 설치 실패 (Dependency Resolution Failure)
오류 유형:
npm install 또는 yarn install을 실행할 때 특정 패키지를 찾을 수 없거나, 버전 충돌 등으로 인해 설치가 중단되는 경우입니다.
해결 방법:
네트워크 연결 확인:
인터넷 연결이 원활한지 확인합니다.
불안정한 네트워크는 패키지 다운로드 실패로 이어질 수 있습니다.
node_modules 및 package-lock.json 삭제:
프로젝트 루트 디렉토리에서 node_modules 폴더와 package-lock.json (또는 yarn.lock for Yarn) 파일을 삭제한 후, 다시 npm install 또는 yarn install을 실행합니다.
이 방법은 종종 엉킨 의존성 문제를 해결해 줍니다.
rm -rf node_modules
rm package-lock.json # yarn 사용 시 rm yarn.lock
npm install # 또는 yarn install
npm 버전 업데이트:
npm 버전이 오래된 경우 문제가 발생할 수 있습니다.
npm install -g npm@latest 명령어로 npm을 최신 버전으로 업데이트한 후 다시 시도해 보세요.
3. 권한 문제 (Permissions Error)
오류 유형: 주로 macOS나 Linux 환경에서 패키지를 전역으로 설치하거나 특정 시스템 디렉토리에 접근할 때 권한 부족으로 발생하는 오류입니다. "EACCES: permission denied"와 같은 메시지가 나타납니다.
해결 방법:
sudo 사용 (주의!):
권한 문제를 해결하기 위해 sudo를 사용하는 방법이 있지만, 이는 시스템 파일에 영향을 줄 수 있으므로 최후의 수단으로 신중하게 사용해야 합니다.
예를 들어 sudo npm install -g [패키지명]과 같이 사용합니다.
npm 디렉토리 소유권 변경:
보다 안전한 방법은 npm이 사용하는 디렉토리의 소유권을 현재 사용자에게 변경하는 것입니다.
오류 메시지에 제시되는 경로를 확인하여 sudo chown -R $(whoami) [npm_폴더_경로]와 같은 명령어를 사용합니다.
4. Node.js 버전 호환성 문제
오류 유형:
설치하려는 Next.js 버전이 현재 설치된 Node.js 버전과 호환되지 않을 때 발생합니다.
Node.js가 너무 오래되었거나, Next.js가 특정 최신 Node.js 버전을 요구하는 경우입니다.
해결 방법:
Node.js 버전 확인:
node -v 명령어를 통해 현재 Node.js 버전을 확인합니다.
Node.js 업데이트:
Next.js 공식 문서에서 권장하는 Node.js 버전(LTS 버전 권장)으로 업데이트합니다.
nvm(Node Version Manager)과 같은 도구를 사용하면 여러 Node.js 버전을 쉽게 관리하고 전환할 수 있습니다.
대부분의 설치 문제는 위의 방법들로 해결될 수 있습니다.
오류 메시지를 주의 깊게 살펴보면 문제 해결의 실마리를 찾을 수 있습니다.

'New' 카테고리의 다른 글
| Javascript 와 Typescript 문법 차이 (0) | 2025.09.21 |
|---|---|
| TypeScript? (0) | 2025.09.21 |
| Next.js 기본 프로젝트 파일 및 디렉토리 용도 (0) | 2025.09.20 |
| Next.js new project building (0) | 2025.09.20 |
| Client-side Rendering (0) | 2025.09.20 |