티스토리 뷰

728x90
반응형

node js 개발 시 여러 버전을 사용하거나 옮겨 다니거나 해야 하는 상황이 발생하는데 

이를 편하게 도와주는 도구가 nvm (node version manager)임을 최근에야 알았다. 

 

간단히 windows 환경에서 활용하는 방법을 알아보았다. 

 

소스위치

먼저 mac/linux용과 windows용이 따로 존재한다. 

mac/linux용

github.com/nvm-sh/nvm

 

nvm-sh/nvm

Node Version Manager - POSIX-compliant bash script to manage multiple active node.js versions - nvm-sh/nvm

github.com

windows용

github.com/coreybutler/nvm-windows

 

Releases · coreybutler/nvm-windows

A node.js version management utility for Windows. Ironically written in Go. - coreybutler/nvm-windows

github.com

 

Windows용 nvm 설치 

windows용은 다음 주소로 가면 설치가 가능한 파일을 다운 받을 수 있다.

https://github.com/coreybutler/nvm-windows/releases

 

Releases · coreybutler/nvm-windows

A node.js version management utility for Windows. Ironically written in Go. - coreybutler/nvm-windows

github.com

nvm-setup.zip을 다운받는다. 

다운받은 압축 파일을 풀고 생성되는 exe파일(nvm-setup.exe)을 실행시킨다. 

(미리 nodejs가 설치되어 있는 폴더를 선택하면 설치된 버전을 nvm이 제어할 것인지 묻는다. )

 

설치 확인

command 창을 열어 다음과 같이 nvm명령어를 실행 시켜서 설치한 버전이 보이면 설치된 것이다.

$ nvm version
1.1.7

 

사용법

nvm list

현재 제어하고 있는 node 버전 확인

$ nvm list

  * 10.9.0 (Currently using 64-bit executable)
  
 

nvm install

새로운(필요한) node 버전을 설치하는 명령어로 버전을 붙여주면 해당 버전의 nodejs가 설치된다.

$ nvm install 12.16.3

Downloading node.js version 12.16.3 (64-bit)...
Complete
Creating D:\Program Files\nvm\temp

Downloading npm version 6.14.4... Complete
Installing npm v6.14.4...

Installation complete. If you want to use this version, type

nvm use 12.16.3

다시 nvm list를 입력하면 해당 버전이 설치된 것을 확인 할 수 있다.

 

$ nvm list

    12.16.3
  * 10.9.0 (Currently using 64-bit executable)

기존에 설치 했던 버전과 새로운 버전이 두개가 보이는 것을 알 수 있다. 

 

예를 들어 두가지 버전 중에 필요한 버전을 사용하면 된다. 

 

nvm use

원하는 node 버전을 선택하여 사용하기 

$ nvm use 12.16.3

 

ERROR! - Troubleshooting

error message가 다음과 같다. 

exit status 1: 'D:\Program'��(��) ���� �Ǵ� �ܺ� ����, ������ �� �ִ� ���α׷�, �Ǵ�
��ġ ������ �ƴմϴ�.

검색해보니 windows 버전에 뭔가 문제가 있는 것 같다.

 

stackoverflow.com/questions/42595618/nvm-windows-fails-when-the-user-path-contains-a-space

 

nvm-windows fails when the user path contains a space

Microsoft Windows [Version 6.1.7601] Copyright (c) 2009 Microsoft Corporation. All rights reserved. C:\Windows\system32>nvm list 6.7.0 * 5.12.0 (Currently using 64-bit executable) C:\W...

stackoverflow.com

방법은 새로운 폴더에 nvm root로 초기화 해놓고 관련 파일을 옮겨서 사용하는 것이다. 

먼저 nodejs들을 넣어둘 폴더를 만든다. (예제에 의하면 nodejs-root폴더 안에 nvm폴더를 만든다.)

 

그 폴더 경로를 nvm root를 이용하여 지정한다. 자신이 만든 폴더 명을 nvm root 다음에 입력하면 된다.

$ nvm root D:\nodejs-root\nvm

실제 nvm 폴더 안은 아무 것도 없다. 

사용하고 싶은 nodejs를 설치하면 된다. (node install 사용)

예제에서는 latest를 입력하여 최신 버전을 선택하였는데 원하는 버전을 넣으면 된다. 

$ nvm install latest

$ nvm list

  * 14.13.0 (Currently using 64-bit executable)

새로운 최신 버전(필자의 경우 14.13.0이 최신 버전이다)이 설치된 것을 알 수 있다.

 

문제는 여전히 nvm use를 쓰면 같은 에러가 난다는 것이다. 

이를 위해 기존에 nvm 설치하던 폴더에 가서 다음 두가지 파일을 복사해서 새로 만든 폴더에 붙여넣어야 한다.

 

  • elevate.cmd
  • elevate.vbs

다음과 같이 새로 생성한 폴더안에 elevate.cmd, elevate.vbs 파일을 붙여 넣는다.

이제 새로 처음 설치한 node 버전 말고 다른 버전(그냥 12.16.3)을 설치한 후 nvm use를 사용하면 다음과 같이 사용하는 node 버전이 바뀌면서 node -v를 실행하면 현재 실행되는 node가 버전이 다름을 알 수 있다.

$ nvm install 12.16.3

$ nvm list

  * 14.13.0 (Currently using 64-bit executable)
    12.16.3

$ node -v
v14.13.0

$ nvm use 12.16.3
Now using node v12.16.3 (64-bit)

$ nvm list

    14.13.0
  * 12.16.3 (Currently using 64-bit executable)

$ node -v
v12.16.3

 

728x90
반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
글 보관함