我对nodejs完全不熟悉。我试图让nodejs在我的Windows 2008盒子上工作,以安装Karma,我将用于TDDing我的AngularJs代码。到目前为止,我已经完成了以下步骤

Install using Chocolatey ==> npm is not recognised Install using 64-bit nodejs installer from nodejs.org ==> npm is not recognised At this stage, running where npm gives me c:\User\<Username>\AppData\Roaming\npm which has nothing in it I figure out that nodejs is installed in C:\Program Files\nodejs. Opening a command prompt in this directory makes npm work fine. So I added C:\Program Files\nodejs to PATH only to get the same error again that npm is not recognized One of the github issues on nodejs repository says that I need to restart the machine and it would fix. But that has not helped so far I do see a Node.js icon in my Start -> Programms mennu which takes me to nodejs console but not sure what to do with that.

在这个过程中,我是否错过了任何重要的步骤?

Edit

我发现如果我从程序文件中打开“Nodejs命令提示符”,那么npm是可以识别的。如何让它在正常的命令提示符下工作?

Edit

在node之后,我开始在另一个应用程序中遇到类似的问题。我在超级用户上发布了这个问题,正如被接受的答案所正确指出的那样,我在我的PATH中有一个额外的引用,这导致了引用后添加的所有路径出现问题。我有一种感觉,一些Chocolatey安装添加了这句令人不安的引用,但我只是不确定是哪一个。


当前回答

添加:

;C:\Program Files\nodejs\

在“系统属性”的“环境变量”的“用户变量”部分的路径变量的末尾。

之后,重新打开命令提示符并键入

npm

这应该有用。

其他回答

如果一切顺利的话。我建议检查这个PATHEXT . cmd必须添加。

安装node后,不要忘记重新启动计算机!这句话难倒了我。

为了详细说明布雷诺的回答……对于Windows 7,这些步骤对我来说是有效的:

Open the Control Panel (Click the Start button, then click Control Panel) Click User Accounts Click Change my environment variables Select PATH and click the Edit... button At the end of the Variable value, add ;C:\Program Files\nodejs Click Ok on the "Edit User Variable" window, then click Ok on the "Environment Variables" window Start a command prompt window (Start button, then type cmd into the search and hit enter) At the prompt (C:\>) type npm and hit enter; you should now see some help text (Usage: npm <command> etc.) rather than "npm is not recognized..."

现在你可以开始使用npm了!

在我的机器(windows)上用nvm安装node后,我遇到了同样的问题。env变量中的路径包含以下内容:

C:\Users\amohanan\AppData\Roaming\nvm C:\Program Files\nodejs

通过从路径中删除c:\ users \amohanan\ appdata \ roam \nvm并重新启动cmd来解决我的问题。

当我试图使用nvm使用另一个版本的node时,出现了这个问题。我从外部安装node,然后尝试使用nvm使用另一个节点版本。这就是为什么npm无法识别的原因。所以,这就是我所做的:

删除node . js 通过NVM方式安装指定版本的节点

NVM 安装 12

使用NVM使用该版本

NVM 安装 12.22.12