티스토리 뷰
node js 개발 시 여러 버전을 사용하거나 옮겨 다니거나 해야 하는 상황이 발생하는데
이를 편하게 도와주는 도구가 nvm (node version manager)임을 최근에야 알았다.
간단히 windows 환경에서 활용하는 방법을 알아보았다.
소스위치
먼저 mac/linux용과 windows용이 따로 존재한다.
mac/linux용
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
'Programming > Web' 카테고리의 다른 글
nodejs dotenv 사용하여 환경 변수 .env에 관리하기 (0) | 2020.10.16 |
---|---|
맥에서 MongoDB 설치하기 (자료 모음) (0) | 2019.10.17 |
Node JS, Express, Nodemon, Morgan (0) | 2019.10.15 |
- Total
- Today
- Yesterday
- tensorflow
- Streamlit
- Stable Diffusion
- vvvv
- Arduino
- conda
- Python
- fablab
- Maker
- nvidia
- git
- WSL
- ubuntu
- 우분투
- Fusion360
- 3d프린터
- cura
- 단축키
- 메이커
- MicroBit
- CAD
- 파이썬
- docker
- comfyUI
- ssh
- Linux
- opencv
- nodejs
- 한글
- vscode
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |