I think I had a few versions of Node installed on my system in various ways, but they were all outdated so I tried this nvm-windows.
It detected the 3 or 4 other versions I had on my system and asked if it wanted me to manage them. I said yes.
Install completed fine, but when cmd.exe loaded up I got this error, but nvm
seems to run fine so I don't think much of it. I try nvm install latest
. It downloads 0.12.7. And now...
C:\Users\Mark>nvm list
1.1.0
0.8.9
0.12.7
0.10.35
C:\Users\Mark>nvm install latest
Version 0.12.7 is already installed.
C:\Users\Mark>node --version
The system cannot find the path specified.
C:\Users\Mark>nvm use 1.1.0
Now using node v1.1.0 (64-bit)
C:\Users\Mark>node --version
The system cannot find the path specified.
Even though 0.12.7 is supposedly installed, it's not listed, and node
doesn't even exist anymore.
Is it really listing 1.1.0
? A 1.x.x
version of node hasn't been released yet. The list of available distributions NVM for Windows pulls from doesn't have that either... so I'm not sure where that's coming from.
As for 0.12.7
, run nvm use 0.12.7
, then node --version
. Remember that NVM for Windows creates a symlink to to the node executable, so if you set it to use 1.1.0
, it is looking for a non-existant version, thus why your system doesn't recognize node
anymore. What's perplexing me is that you should not have received Now using node v1.1.0 (64-bit)
... it simply doesn't exist yet.
Do you have io.js installed? The only thing I can think of right now is a potential conflict with it.
Yes. I'm pretty sure I did install iojs at some point.
I just uninstalled nvm-windows, then searched for all my copies of node and uninstalled/deleted those too.
Then reinstalled nvm-windows. nvm list
comes up clean. I tried installing and using 0.12.7 again, but it still didn't work. I checked my path, and see a reference to C:/Program Files/nodejs
. That folder doesn't exist on my system. The variable says "symlink" so I tried creating the link manually (is it supposed to be an actual symbolic link, or just a shortcut, or something else?). Then node.exe
started working, but not node
. Same error as above: "The system cannot find the path specified."
Which I realize now is actually different than the typical program not found error:
C:\Users\Mark>aergearg
'aergearg' is not recognized as an internal or external command,
operable program or batch file.
I replaced the value of NVM_SYMLINK
with the direct path instead: C:\Users\Mark\AppData\Roaming\nvm\v0.12.7
and now everything works fine. I'm not sure what will happen if I try nvm using something else.
What does nvm use
do exactly? Does it update the C:/Program Files/nodejs
symlink to point to the new folder, or does it edit the NVM_SYMLINK
variable?
As you guessed, nvm use
updates the symlink. The NVM_SYMLINK
is used in the PATH
so the OS has a consistent directory to search for the node executable. You may want to update the settings.txt
file as well so the tool knows where to map the symlink, but you shouldn't have a problem with nvm use
for other versions.
Overall, I'm glad you got it working, but I'm truly sorry for the hassle. You managed to hit all the hot spots at once :) Most of this surrounds the installation process, which has been a bit convoluted since the release of this project... io.js didn't exist, then it did, then their was the announcement it was merging back with node... meanwhile I didn't have time to keep up (see updates on gitter). There has been alot of feedback about installation of NVM for Windows in general. There is a completely new process for this in the next version, using a commercial tool graciously donated. It's not ready for release yet, so if you have any feedback, feel free to leave a note on gitter or another issue I can mark as an enhancement request. I'll do my best to support as many use cases as possible. For now, I'm going to close this issue... I can reopen it if there is something unique to keep an eye on.
I ran into the same issue. Changing the NVM_SYMLINK
path like what was mentioned above worked for me. One weird thing is I feel like these 2 numbers should equal each other:
I just had the same problem. I solved it by deleting the empty folder "c:\program filesnodejs". I then created the folder again. I guess there was a rights issue because the folder got created by an older node installer.
After that I started a console (cmd) with admin rights (right click -> run as administrator). Now I just used the "nvm use x.x.x xx" and everything is fine now . If the symbolic link has been created succssfully, it will be shown as a link symbol in "c:\program files".
Hope this helps.
@herrfrank thanks,it's userful, just delete the folder, and create again, then node work fine.
Initially "C:\Program Filesnodejs" was not created, I just used 'nvm use VX.X.X' after installing "nvm install latest" then "C:\Program Filesnodejs" was created . it is working fine now.
I faced the same issue when nvm-windows installed from windows setup.
if we select path in setup that is obvious exists but actually for symlink it shouldn't so need to delete nodejs folder and nvm use again. I have made troubleshooting steps.
http://techbrij.com/nvm-windows-node-npm-not-recognized
Hope it helps.
Most helpful comment
I just had the same problem. I solved it by deleting the empty folder "c:\program filesnodejs". I then created the folder again. I guess there was a rights issue because the folder got created by an older node installer.
After that I started a console (cmd) with admin rights (right click -> run as administrator). Now I just used the "nvm use x.x.x xx" and everything is fine now . If the symbolic link has been created succssfully, it will be shown as a link symbol in "c:\program files".
Hope this helps.