Bachalo
Bachalo

Reputation: 7219

Fixing npm path in Windows 8 and 10

Have done a lot of googling, tried reinstalling node.js using the official installer, but my npm pathing still doesn't work.

This doesn't work

npm install foo

I get an error message saying missing module npm-cli.js

2 hours of googling later I discovered a workaround
Instead of simply 'npm' I type

node C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js

But how can I correct my nodejs install so I can simply type 'npm' ?

Upvotes: 183

Views: 940538

Answers (25)

Gurtaj Chhabra
Gurtaj Chhabra

Reputation: 1

If node was installed fresh, something that I ran into on Windows was the following needed to be done before it worked in PATH:

nvm on

Upvotes: 0

While running ng new sampleapp/ ng g c sample

'ng' is not recognized as internal or external command, operable program r batch file.

Solution :

  1. First run below command in cmd

    npm config set prefix "C:\Users{Username}\AppData\Roaming\npm"

  2. npm install -g @angular/cli (Based on node version install angular/cli version. In my case my node v18.18.2 that's why I installed Ang16 version.

npm install -g @angular/[email protected]

Upvotes: 0

Liteboho Rantso
Liteboho Rantso

Reputation: 11

Try to run the following first, if you are using fnm:

fnm env --use-on-cd | Out-String | Invoke-Expression

Upvotes: 1

anshu4848
anshu4848

Reputation: 1

I tried to update the environment variables to "C:\Program Files\nodejs". It did nothing for me.

  • Open Command Prompt.
  • Execute the following command "npm config edit"
  • Search "prefix" and remove the semicolon before the prefix.
  • Put the path to nodejs folder location(Eg: C:\Program Files\nodejs).
  • Save and exit the file.

Upvotes: 0

Romil Jain
Romil Jain

Reputation: 11

The problem for me was a Zscaler certificate issue. I reached out to the IT team and they gave me a Zscaler certificate with a .pem extension to use.

Then you can run this line

npm config set cafile <Path to Certificate>/<certificate name>.pem

Upvotes: 1

Jimmy
Jimmy

Reputation: 111

I did Node repair with the .msi file and everything worked well.

Upvotes: 0

Alex Ward
Alex Ward

Reputation: 73

If, like me, you have MSYS_NO_PATHCONV = 1 configured as a user variable for Git Bash, this issue will be triggered. To workaround, you can either remove this variable or use a different shell (PowerShell) for npm.

Upvotes: 0

a&#39;&#39;
a&#39;&#39;

Reputation: 2372

When you're on Windows but running VS Code in Windows Subsystem for Linux like this

linux@user: /home$ code .

you actually want to install NodeJs on Linux with

linux@user: /home$ sudo apt install nodejs

Installing NodeJs on Windows, modifying PATH and restarting will get you no results.

Upvotes: 0

Yar
Yar

Reputation: 7457

get the path from npm:

npm config get prefix

and just as a future reference, this is the path I added in Windows 10:

C:\Users\{yourName}\AppData\Roaming\npm



Update:

If you want to add it for all users just add the following path [by @glenn-lawrence from the comments]:

%AppData%\npm

Upvotes: 199

Mohammed Al-Reai
Mohammed Al-Reai

Reputation: 2796

steps 1 in the user variable and system variable

  C:\Program Files\nodejs

then check both node -v and the npm -v then try to update the the npm i -g npm

Upvotes: 1

Md Wahid
Md Wahid

Reputation: 460

You can follow the following steps:

  • Search environment variables from start menu's search box.
  • Click it then go to Environment Variables
  • Click PATH
  • click Edit
  • Click New and try to copy and paste your path for 'bin' folder [find where you installed the node] for example according to my machine 'C:\Program Files\nodejs\node_modules\npm\bin'

If you got any error. try the another step:

  • Click New, then browse for the 'bin' folder

Upvotes: 6

Premium Ayodele
Premium Ayodele

Reputation: 407

If after installing your npm successfully, and you want to install VueJS then this is what you should do

after running the following command (as Admin)

npm install --global vue-cli

It will place the vue.cmd in the following directory C:\Users\YourUserName\AppData\Roaming\npm

you will see this in your directory.

Now to use vue as a command in cmd. Open the cmd as admin and run the following command.

setx /M path "%path%;%appdata%\npm"

Now restart the cmd and run the vue again. It should work just fine, and then you can begin to develop with VueJS.

I hope this helps.

Upvotes: 5

user11115602
user11115602

Reputation:

If you can't work with npm packages, you propably has bad config with npm install packages, you try this:

Run the following command in your terminal to revert back to the default registry

npm config set registry https://registry.npmjs.org/

https://docs.npmjs.com/misc/config#registry

Upvotes: 0

Altin
Altin

Reputation: 2245

Installed Node Version Manager (NVM) for Windows: https://github.com/coreybutler/nvm-windows

I'm using Windows 10 - 64 bit so I run... Commands:

  • nvm arch 64 (to make default the 64 bit executable)
  • nvm list (to list all available node versions)
  • nvm install 8.0.0 (to download node version 8.0.0 - you can pick any)
  • nvm use 8.0.0 (to use that specific version)

In my case I had to just switch to version 8.5.0 and then switch back again to 8.0.0 and it was fixed. Apparently NVM sets the PATH variables whenever you do that switch.

Upvotes: 7

Thai Mozhi Kalvi
Thai Mozhi Kalvi

Reputation: 533

add Environment Path to

C:\Program Files\nodejs\node.exe;C:\Users[your username]\AppData\Roaming\npm

Upvotes: 1

willey
willey

Reputation: 101

Edit the System environment variables, and enter following path:

C:\Program Files\nodejs\node.exe;

C:\Users\{yourName}\AppData\Roaming\npm

Upvotes: 10

ninjasense
ninjasense

Reputation: 13856

I may be a total noob but I had no clue I had to install npm-cli first. I had just assumed I already had it.

npm install --global vue-cli

Upvotes: -3

Mohan Raj Raja
Mohan Raj Raja

Reputation: 156

I did this in Windows 10,

  1. Search for Environment Variables in the Windows search
  2. "Edit the System environment variables" option will be popped in the result
  3. Open that, select the "Path" and click on edit, then click "New" add your nodeJS Bin path i.e in my machine its installed in c:\programfiles\nodejs\node_modules\npm\bin
  4. Once you added click "Ok" then close

Now you can write your command in prompt or powershell.

If you using WIndows 10, go for powershell its a rich UI

Upvotes: 5

Asha
Asha

Reputation: 913

change the path for nodejs in environment varibale.

setting environment variable

Upvotes: 2

S.vaysrub
S.vaysrub

Reputation: 19

I've had this issue in 2 computers in my house using Windows 10 each. The problem began when i had to change few Environmental variables for projects that I've been working on Visual studio 2017 etc. After few months coming back to using node js and npm I had this issue again and non of the solutions above helped. I saw Sean's comment on Yar's solution and i mixed both solutions: 1) at the environmental variables window i had one extra variable that held this value: %APPDATA%\npm. I deleted it and the problem dissapeared!

Upvotes: 0

marty
marty

Reputation: 49

This worked for me: 1. npm root -g (to see the current npm is installed) 2. npm config set prefix (to change the path)

Upvotes: 4

Martez C
Martez C

Reputation: 201

I have used the cmdlet and navigate to the path you want to switch your npm files to. Type in npm root -g to see what the current path your npm is installed to. Next use npm config set prefix and your npm path will be changed to whatever directory you are currently on.

Upvotes: 20

user6690322
user6690322

Reputation:

Try this one dude if you're using windows:

1.) Search environment variables at your start menu's search box.
2.) Click it then go to Environment Variables...
3.) Click PATH, click Edit
4.) Click New and try to copy and paste this: C:\Program Files\nodejs\node_modules\npm\bin

If you got an error. Do the number 4.) Click New, then browse the bin folder

  • You may also Visit this link for more info.

Upvotes: 11

wjohnsto
wjohnsto

Reputation: 4463

You need to Add C:\Program Files\nodejs to your PATH environment variable. To do this follow these steps:

  1. Use the global Search Charm to search "Environment Variables"
  2. Click "Edit system environment variables"
  3. Click "Environment Variables" in the dialog.
  4. In the "System Variables" box, search for Path and edit it to include C:\Program Files\nodejs. Make sure it is separated from any other paths by a ;.

You will have to restart any currently-opened command prompts before it will take effect.

Upvotes: 274

Dennington-bear
Dennington-bear

Reputation: 1782

Go to control panel -> System -> Advanced System Settings then environment variables.

From here find the path variable, Go to the end of the line and paste "C:\Program Files\nodejs\node_modules\npm\bin" (change the path to the directory to where ever you installed it e.g. if you specifically installed it anywhere change it)

Upvotes: 9

Related Questions