在Windows上安装npm(Node.js包pipe理器)(不使用Node.js MSI)
问题是:在使用nvm
来安装Node.js时,我能够安装我需要的Node.js版本,但nvm
不会自动安装npm
。 NPM的页面没有提供关于安装的信息。 由于没有太多的Windows用户我自己,我完全无所适从…
谷歌的每个结果似乎都使用Node.js MSI安装程序来得到这个工作 – 这不是我的select。 那么,我怎么样?
要在Windows上安装npm,只需解压npm 档案所在的节点。 有关更多详细信息,请参阅文档 。
npm随节点一起发货,这就是你应该如何安装它。 nvm仅用于更改节点版本,不安装npm。 使用npm和nvm的更简洁的方法是首先安装节点(使用npm),然后通过npm install nvm
安装nvm软件包
https://nodejs.org/download/ 。 该页面具有Windows安装程序(.msi)以及其他安装程序和二进制文件。下载并安装Windows。
Node.js自带NPM。
NPM位于Node.js的安装目录中。
我用了相当的@Eyuel方法:
- 从https://nodejs.org/en/#download下载nodejs msi
- 从github下载npm zip https://github.com/npm/npm
- 在目录“节点”中提取MSI(7 Zip)
- 设置PATH环境variables以添加“节点”目录
- 从不同目录下的npm中解压zip文件(不在节点目录下)
- CD到npm目录并运行命令
node cli.js install npm -gf
现在你应该有node + npm工作,使用这些命令来检查: node --version
和npm --version
更新27/07/2017 :我注意到最新版本的npm和最新版本的npm的最新版本与我在回答这个问题时所使用的完全不同。 使用这些版本进行安装将不起作用。 它正在使用节点6.11.1和npm 5.2.3。 另外,如果您使用代理运行,请不要忘记在互联网上连接:
- 导出http_proxy = http://代理:8080
- 导出https_proxy = http:// proxy:8080
- npm config set proxy http:// proxy:8080
使用Windows CMD将第一张CD安装到节点(nodejs)的安装位置,然后按照以下步骤操作
C:...\node> git config --system http.sslcainfo /bin/curl-ca-bundle.crt C:...\node> git clone --recursive git://github.com/isaacs/npm.git C:...\node> cd node=modules\npm C:...\node=modules\npm> node cli.js install npm -gf
我还需要在Windows中安装npm,并通过Chocolatey pacakage manager进行安装。 对于那些还没有听说过的人来说,Chocolatey是Windows的包pipe理器,它为您提供了在Windows环境下的apt-get的便利。 为了得到它到https://chocolatey.org/那里有一个PowerShell脚本下载并安装它。; 之后,你可以运行:
chocolatey install npm
你很好走。
请注意,独立npm不再被更新,并且已知的最后一个版本在Windows上有问题。 你可以看看另一个选项是使用LessMSI从MSI中提取npm。
只需从http://nodejs.org/dist/下载“node.exe”,select您最喜欢的“node.js”版本或采取最新的; 。 您也可以从“x64”子目录中获取64位版本。
然后,到http://nodejs.org/dist/npm/find你最喜欢的“npm”版本的Zip存档(推荐:; 1.4.10
)。 沿着“node.exe”解压档案。
最后,为方便起见,build议将“node.js”目录添加到PATH中。
编辑:我推荐更新npm使用npm install npm -g
因为由nodejs.org提供的版本是非常古老的。
如果你想保留原始的npm版本,不要把npm放在"node.exe"
旁边。 只需创build一个目录,并使用与“全局”标志相同的命令,然后将.\node_modules\.bin\npm.cmd
到新目录:
mkdir c:\app\npm\_latest cd c:\app\npm\_latest <NPM_ORIGINAL_PATH>\npm install npm cp node_modules\.bin\npm.cmd npm.cmd
最后改变你的PATH使用c:\app\npm\_latest
我写了一个简单的应用程序,最近处理各种版本的节点和npm的pipe理。 它允许您select不同版本的节点和npm来下载并select要使用的版本。 看看它是否有用。
尝试去窗口 – >首选项 – > Nodeclipse,并取消选中“查找path上的节点…”框。 然后确保下面的“Node.jspath”设置为node.exe文件的位置(对于我来说,它是C:\ Program Files(x86)\ nodejs \ node.exe)。
下载最新的Node.js MSI(4.x或5.x)安装程序并通过命令行运行以下命令:
msiexec /a node-v4.4.3-x64.msi /qb TARGETDIR="C:\Node.js"
这会将二进制文件解压缩到C:\Node.js\nodejs
。
然后你会想添加C:\Node.js\nodejs
PATH
环境variables。
要更新NPM,请执行以下操作:
cd C:\Node.js\nodejs npm install npm@latest
完成后,您应该能够检查版本:
node --version npm --version
Node应该是4.4.3+(无论你安装哪个),npm应该是3.8.7+。
“巧克力在几秒钟内安装”
如果您在星期天下午不关心讽刺或悲叹的工程师,请跳到下面的TL; DR部分中的安装说明。
对于其他人:我想修改这个build议使用的答案 (现在似乎是Windows最热门的包pipe理解决scheme): 巧克力
它可以让工作顺利完成。 但是,当我第一次尝试时,花了一些时间来理解有些复杂的安装说明。 安装说明有点像这样(完成了通过它的过程中所经历的):
- 注意:
- 注意:
- 注意:
三个大屁股注意之前,即使知道的基础知识…这让我很担心…多么错了事情可以去!?
- 使用受限制的TLS进行安装
甚至不知道
TLS
是什么…哦,这是SSL
好朋友 – 不应该这只是默认,只是开箱即用? 我的浏览器可以做HTTPS
,没有问题! (只是在开玩笑…我知道SSL
和TSL
经常在高安全需求的环境中造成很大的痛苦) - 选项1
- 选项2
呃…伟大的…我不能只是安装?
- 在代理之后安装?
就是不行…
- 要求
呃boi …
- 为什么巧克力安装在默认情况下?
说真的!?!
- 安装之前
- 我可以使用代理安装吗?
再次与代理…
- 我可以安装巧克力的特定版本吗?
只要任何版本都可以,谢谢…
- 我可以使用Windows内置压缩而不是下载7zip吗?
7zip的? 为什么你甚至提到这个?
- 非pipe理安装
-
现在听起来很棒!
- “ 注意 :这个选项应该是最后的手段,被认为是一个高级的场景。”
-
嘘$%!@ T。
-
- “ 注意 :这个选项应该是最后的手段,被认为是一个高级的场景。”
- 替代安装选项
头晕
- 命令行
- “这真的是最简单的方法,因为在执行之前不需要configurationPowerShell。”
你去了!
- “这真的是最简单的方法,因为在执行之前不需要configurationPowerShell。”
虽然我很欣赏这样一个事实,那就是如此广泛地讨论陷阱及其可能的解决scheme,也许可以重新组织它们,并且Chocolatey installs in seconds
保证将“最简单的方法”放在第一位,这将是非常棒的!
TL; DR:安装巧克力,节点(和NPM)
安装巧克力
注意:您可能希望从安装页面复制确切的命令,因为它可能随时间而改变。
- 打开标准的Windows命令行
-
@powershell -NoProfile -ExecutionPolicy unrestricted -Command "(iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))) >$null 2>&1" && SET PATH="%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
- 重新启动控制台
- 完成!
安装节点(和NPM)
- 由于Chocolatey安装的目录与MSI安装不同,请转到您的系统configuration并删除以前的
node
安装(如果有的话) - 如上所述安装巧克力
-
choco install nodejs
注意我使用了
nodejs
。 我甚至不知道是什么node
,但是我已经在node
已经被其他系统中的其他东西占用了一些麻烦,我想,nodejs
会是更安全的赌注 - 重新启动您的控制台
- 当心:
node -v
作品!- 而
npm -v
也可以工作! 真棒。
- 而
在此之后,我可以安装没有问题的firebase-tools
(我以前无法做到这一点),所以一定会变得非常糟糕! 🙂
如果您正在运行Windows 10 Creators Update(1703),并且可以在Unixterminal中轻松导航,则可以使用Windows上的Ubuntu上的本地Feature Bash (又名Bash / WSL )
这最初是在Build 2016发布时推出的,但是在创作者更新中解决了很多补充和错误修复,但请注意,这仍然处于testing阶段。
启用简单导航到控制面板\所有控制面板项目\程序和function\打开或closuresWindowsfunction
然后selectWindows子系统为Linux(testing版)如下Bash在Windowsfunction
- 如何设置默认的Java安装/运行时(Windows)?
- lxml安装错误ubuntu 14.04(内部编译错误)
- 尝试在Windows 8上安装NetCDF4时,出现“在registry中找不到的Python版本2.7”错误
- 由于login失败,SQL Server 2012无法启动
- 如果不存在,如何在VB中创build一个文件夹?
- 如何在安装SQL Server R2 Express时修复“性能计数器registryconfiguration单元一致性”?
- 捆绑安装返回“找不到Gemfile”
- 等待数据库引擎恢复句柄失败。 检查SQL服务器错误日志查找潜在的原因
- IntelliJ IDEA是否在64位Windows系统上工作?