라떼군 이야기


Windows NVM에서 Node.js 설치 시 npm zip 파일을 찾을 수 없는 에러 해결 방법

Problem

Windows 환경에서 nvm-windows를 사용하여 특정 버전의 Node.js(예: 14.17.3)를 설치하려고 할 때 이 문제가 발생합니다. nvm install <version> 명령어를 실행하면 Node.js 실행 파일은 정상적으로 다운로드되지만, npm을 설치하는 단계에서 중단됩니다.

구체적으로는 Downloading npm... 메시지 이후 The system cannot find the file specified라는 에러가 출력되며, 로그를 보면 임시 폴더(temp) 내의 npm-v*.zip 파일을 찾지 못해 설치가 실패하는 현상입니다.

Background

**NVM(Node Version Manager)**은 프로젝트별로 상이한 Node.js 버전을 손쉽게 전환하고 관리할 수 있게 해주는 필수적인 개발 도구입니다. Windows용 포팅 버전인 nvm-windows는 Node.js 코어와 패키지 매니저인 npm을 별도로 다운로드하여 설치 경로를 연결하는 방식을 사용합니다.

이 문제는 nvm-windows의 특정 최신 버전(v1.1.8 이상 일부 버전)에 존재하는 버그로 인해 발생합니다. npm 압축 파일을 다운로드한 후 압축을 해제하거나 경로를 참조하는 과정에서 파일 시스템 경로를 제대로 찾지 못하는 이슈가 보고되어 있습니다. 이는 사용자 환경의 문제가 아닌 도구 자체의 버그일 가능성이 높습니다.

Solution

이 문제는 nvm-windows의 버그로 확인되었으므로, 가장 확실하고 검증된 해결책은 안정적인 이전 버전(v1.1.12)으로 다운그레이드하는 것입니다.

방법 1: NVM 버전 다운그레이드 (권장)

Stack Overflow와 GitHub 이슈 트래커에서 가장 많은 추천을 받은 해결 방법은 nvm-windowsv1.1.12 버전으로 롤백하는 것입니다.

  1. 기존 NVM 제거 (선택 사항) 제어판의 ‘프로그램 추가/제거’에서 기존에 설치된 NVM을 제거하는 것이 가장 깔끔하지만, 덮어쓰기 설치를 시도해볼 수도 있습니다.

  2. v1.1.12 설치 파일 다운로드 nvm-windows의 릴리스 페이지에서 nvm-setup.zip (v1.1.12) 파일을 다운로드합니다.

  3. 설치 및 확인 설치를 완료한 후 명령 프롬프트(CMD)나 PowerShell을 열어 버전을 확인하고 Node.js를 다시 설치합니다.

# 1. 현재 nvm 버전 확인 (설치 후)
nvm version
# 출력 예시: 1.1.12

# 2. 에러가 발생했던 Node.js 버전 재설치 시도
nvm install 14.17.3

# 3. 설치된 버전 사용 설정
nvm use 14.17.3

방법 2: 수동으로 npm 설치 (임시 방편)

만약 NVM 버전을 변경하기 어려운 상황이라면, Node.js만 NVM으로 설치된 상태에서 npm을 수동으로 다운로드하여 연결할 수 있습니다. 하지만 이 방법은 번거롭고 경로 설정 실수가 발생할 수 있어 권장하지 않습니다.

  1. nvm install <version> 실행 (npm 설치에서 에러가 나더라도 node.js 실행 파일은 설치됨)
  2. 해당 버전의 npm zip 파일을 Node.js 공식 사이트 등에서 별도로 다운로드
  3. NVM 설치 경로(예: C:\Users\User\AppData\Roaming\nvm\v14.17.3\node_modules)에 압축 해제

하지만 방법 1이 근본적인 해결책이므로 우선적으로 시도하는 것이 좋습니다.

Deep Dive

왜 v1.1.12인가?

오픈소스 커뮤니티에서는 최신 버전이 항상 가장 안정적인 것은 아니라는 점을 보여주는 사례입니다. nvm-windows의 경우 v1.1.8 이후 리팩토링 과정에서 경로 처리 로직에 이슈가 발생했고, 많은 사용자가 v1.1.12 버전이 가장 안정적으로 동작한다고 보고했습니다.

프로덕션 환경 주의사항

개발 팀 전체가 동일한 환경을 갖추기 위해서는 사용하는 NVM의 버전도 통일하는 것이 좋습니다. ‘최신 버전’을 맹목적으로 설치하기보다는, 팀 내 위키나 온보딩 문서에 ‘검증된 버전(v1.1.12 등)‘을 명시하여 불필요한 환경 설정 시간을 줄이는 것이 생산성에 도움이 됩니다.

향후 업데이트

이 문제는 GitHub 이슈(#1209)로 등록되어 있으며, 메인테이너가 다음 릴리스에서 수정할 계획이라고 밝혔습니다. 따라서 추후에는 최신 버전으로 업데이트해도 문제가 해결될 수 있으니 릴리스 노트를 주기적으로 확인하는 것이 좋습니다.

Conclusion

Windows에서 NVM을 통해 Node.js를 설치할 때 npm zip 파일을 찾지 못하는 에러는 nvm-windows 자체의 버그입니다. 복잡한 설정 변경보다는 NVM 도구 자체를 안정적인 버전인 v1.1.12로 다운그레이드하여 사용하는 것이 가장 빠르고 효과적인 해결 방법입니다.

References

Open to collaboration (협업 문의) Get in touch (연락하기) →