我对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安装添加了这句令人不安的引用,但我只是不确定是哪一个。
为了详细说明布雷诺的回答……对于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了!
好吧,在我的情况下,通过Mocha做测试,我尝试了一切,只是意识到我必须在package.json内的测试用例脚本标记周围删除单引号。
我在所有*.test.js文件上运行mocha测试用例,如下所示:
package.json
之前:
"scripts": {
"test": "mocha server/**/*.test.js",
"test-watch": "nodemon --exec 'npm run test'"
}
After(删除单引号- npm run test):
"scripts": {
"test": "mocha server/**/*.test.js",
"test-watch": "nodemon --exec npm run test"
}
对我有用,以防别人也被困在这事上。
只需从这里下载并安装Node.js https://nodejs.org/en/
如果您运行下载的文件并安装它,它们将自动为您的系统配置
你不再需要任何其他配置,现在你可以在任何地方使用npm命令
如果Nodejs安装成功,仍然显示如下信息:
'npm'不能被识别为内部或外部命令、可操作程序或批处理文件。
Windows用户请执行以下步骤:
进入我的电脑属性
在窗口左侧栏中单击“高级系统设置”。
现在您有了一个系统属性窗口。单击高级
然后,单击环境变量按钮
现在你有了环境变量窗口:从系统变量,选择路径
点击编辑
在变量值的末尾,添加;C:\Program Files\nodejs\
注意:如果你在其他驱动器上安装了nodejs,请按此操作。
单击“确定”所有打开的对话框
非常重要的提示:“关闭命令提示符并重新启动”
(这非常重要,因为如果您没有重新启动命令提示符,则更改将不会反映出来。)
现在你可以在任何地方使用npm命令
通过命令查看npm config:
npm config list
它需要属性:“prefix”,全局“prefix”和“node bin location”。
; userconfig C:\Users\username\.npmrc
cache = "C:\\ProgramData\\npm-cache"
msvs_version = "2015"
prefix = "C:\\ProgramData\\npm"
python = "C:\\Python27\\"
registry = "http://registry.com/api/npm/npm-packages/"
; globalconfig C:\ProgramData\npm\etc\npmrc
cache = "C:\\ProgramData\\npm-cache"
prefix = "C:\\ProgramData\\npm"
; node bin location = C:\Program Files\nodejs\node.exe
; cwd = C:\WINDOWS\system32
在这种情况下,它需要将这些路径添加到环境变量PATH的末尾:
;C:\Program Files\nodejs;C:\ProgramData\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