我对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安装添加了这句令人不安的引用,但我只是不确定是哪一个。


当前回答

我们只需要安装nodejs,其他什么都不需要做,然后使用命令提示符,将目录切换到你想要安装npm的项目,然后使用npm install命令。这对我很有效。

其他回答

我遇到了完全相同的问题,并注意到在安装node.js后,在用户变量部分的path中有一个新的路径条目,其值为> c:\ user \AppData\Roaming\npm。此外,系统变量中的Path条目还附加了——> C:\Program Files\nodejs.现在因为用户变量优先于系统,你有两个选项来解决这个问题。从user变量中删除路径或更正正确的路径(C:\Program Files\nodejs)。重新启动CMD,它应该工作。

只需从这里下载并安装Node.js https://nodejs.org/en/

如果您运行下载的文件并安装它,它们将自动为您的系统配置

你不再需要任何其他配置,现在你可以在任何地方使用npm命令


如果Nodejs安装成功,仍然显示如下信息:

'npm'不能被识别为内部或外部命令、可操作程序或批处理文件。

Windows用户请执行以下步骤:

进入我的电脑属性 在窗口左侧栏中单击“高级系统设置”。 现在您有了一个系统属性窗口。单击高级 然后,单击环境变量按钮 现在你有了环境变量窗口:从系统变量,选择路径 点击编辑 在变量值的末尾,添加;C:\Program Files\nodejs\ 注意:如果你在其他驱动器上安装了nodejs,请按此操作。 单击“确定”所有打开的对话框

非常重要的提示:“关闭命令提示符并重新启动” (这非常重要,因为如果您没有重新启动命令提示符,则更改将不会反映出来。)

现在你可以在任何地方使用npm命令

我遇到了Ashu描述的同样的问题,但除此之外,nodejs的PATH条目被反斜杠终止:

C:\Program Files\nodejs\

我还必须删除最后的反斜杠,以使它工作。

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

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

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

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