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


当前回答

如果你通过服务帐户(如Visual Studio TFS构建控制器服务或任何其他后台服务)得到这个错误,请确保在安装npm后重新启动服务,因为新的PATH环境设置将不会被那些已经运行的进程拾取。我通过我的构建服务得到了同样的错误,但我已经安装了npm并在控制台中运行。

其他回答

为了详细说明布雷诺的回答……对于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了!

我知道这个问题很老了,我们有很多答案,不幸的是,我的情况不同,因此有不同的解决方案。

如果在机器中安装节点后才开始使用nvm来管理节点版本,则很可能会面临同样的问题。

我安装了一个10.15.3版本,然后我不得不使用另一个版本,因为我的一个项目有一些紧密的依赖关系。然后我决定安装nvm,在安装时询问我是否需要nvm来管理我机器上已经安装的10.15.3版本。是的,我答应了,希望它能解决这个问题,不幸的是,它没有。

无论我尝试其他答案中提到的许多其他事情,包括设置路径,我总是得到这个错误。最后,为了解决这个问题,我尝试了这些方法。

卸载已安装的节点版本,例如nvm Uninstall 10.15.3 确保没有其他节点版本在那里,nvm列表 然后安装需要的版本,例如nvm install 10.15.3。这将为您提供前面所述的输出。

下载node.js 10.15.3版本(64位)… 完整的 创建C:\Users\ SibeeshVenu \ AppData \ \ nvm \ temp徘徊 下载npm版本6.4.1…完整的 安装npm v6.4.1… 安装完成。如果您想使用这个版本,请键入 NVM使用10.15.3 PS C:\Users\SibeeshVenu> nvm使用10.15.3 现在使用节点v10.15.3(64位)

请注意,从上面的命令中,也安装了npm。 现在使用你需要的版本,nvm使用10.15.3并输入npm

有一天,我在自己的Windows 7电脑上遇到了这个问题。问题不在于我的路径,而是我必须使用转义的正斜杠而不是反斜杠,就像这样:

"scripts": {
    "script": ".\\bin\\script.sh"
}

对我来说,将path添加到path并没有达到目的。 运行c:\Program Files\nodejs\ nodevars.bat,它将为您完成这项工作

在尝试了我在YouTube和stackoverflow上找到的各种解决方案来解决这个问题后,所有的努力都无济于事。

我猜问题一定是因为节点必须已经移动到不同的文件夹而不是<C:\Program Files>所以我所做的是我卸载节点,然后重新安装它,一切恢复正常。

我相信这个过程之后你就会没事的。