这是我的package.json
:
{
"name": "my-example-app",
"version": "0.1.0",
"dependencies": {
"request": "*",
"nano": "3.3.x",
"async": "~0.2"
}
}
现在,当我打开 cmd 并运行npm install
时,安装挂起。我究竟做错了什么?
我有同样的问题。原因 - 配置了错误的代理,因此 npm 无法下载包。
所以你最好的选择是查看输出
$ npm install --verbose
并找出问题所在。如果您从未配置过代理,则可能的原因可能是
我遇到了同样的问题。我试过一个
npm config set registry http://registry.npmjs.org/
关闭 https。我也试过
npm set progress=false
关闭进度条(据报道会减慢下载速度)。
问题出在我的网络驱动程序上。我只需要重新启动,滞后就消失了。
您可以尝试删除package-lock.json
并在npm install
之后运行。这对我有用。
我在 macOS 上遇到了同样的问题,经过一段时间的挣扎和搜索,这个答案实际上为我解决了这个问题:
npm config rm proxy
npm config rm https-proxy
npm config set registry http://registry.npmjs.org/
我在公司代理后面,所以我通常使用中间代理来启用 NTLM 身份验证。
使用 CNTLM 代理时,我遇到了 npm install 挂起的问题。使用 NTLM-APS(一个类似的代理),挂起就消失了。
npm
在 Mac OS 上更新帮助了我。使用命令:
sudo npm install -g npm@latest
当您的 ssh 密钥受密码保护时,请运行ssh-add
。npm 可能挂在某处询问您的密码。
虽然您的里程可能会有所不同,但跑步npm cache verify
为我解决了这个问题。
在 MacOS 上,我可以通过
networksetup -setv6off Wi-Fi
安装后,您可以使用以下命令恢复原始配置
networksetup -setv6automatic Wi-Fi
在充分尊重所有答案的情况下,我切换到了不同的网络,它对我有用。
这很奇怪,但我想我只是不耐烦地跑了 -> npm install --verbose 并看到了进展,但它真的很慢!!!我需要的只是耐心:D
如果它对其他人有用,以下对我有用:
在我的机器上,虽然 npm 代理设置正确,但npm install
会永远等待做类似 sill extract的事情。重新尝试npm install
一次又一次地等待同一个包。
在等待很长的超时后,npm install
打印出一条错误消息,暗示git正在尝试获取某些东西。
使用以下命令配置git proxy后问题消失:
git config --global http.proxy https://proxy-server:port
注意配置不生效https
的值。http.proxy
代理服务器设置(http / https / 端口)可能因用户而异;因此,值得花一些时间尝试npm和git代理服务器设置。
注册表 ( https://registry.npmjs.org/cordova ) 被我们的防火墙阻止。取消阻止它解决了这个问题。
当安装 IONIC 安装包和 ReactNative 以及另一个包 npm 中的 npm 阻塞时,此方法对我有用。
您可以临时更改:
npm config set prefix C:\Users\[username]\AppData\Roaming\npm\node_modules2
更改环境变量中的路径。放:
C:\Users[用户名]\AppData\Roaming\npm\node_modules2
运行命令来安装你的包。
打开文件资源管理器,复制链接:
C:\Users[用户名]\AppData\Roaming\npm\node_modules
ok 文件 yourpackage.CMD 创建了另一个文件夹 在 node_modules 中创建了“node_modules2”并包含您的包文件夹。
将你的包文件 CMD 复制到父文件夹"npm"。
将您的包文件夹复制到父文件夹"node_modules"。
现在运行:
npm config set prefix C:\Users\[username]\AppData\Roaming\npm
更改环境变量中的路径。放:
C:\Users[用户名]\AppData\Roaming\npm
现在该软件包可以在命令行中正常工作。
我不确定您的问题是否与我的问题相同,但我也遇到了挂起的“npm install”并且能够修复它。
就我而言,我想在项目中本地安装打字稿:
npm i typescript --save-dev
出于某种原因,这与我拥有的全局安装的打字稿相冲突,并且外壳只是永远挂起而不是完成或出错......
我通过首先使用 -g 全局标志删除全局安装的打字稿来修复它:
npm uninstall typescript -g
完成此操作后,第一个命令起作用了!
从以前的 npm install 中删除 node_modules & package-lock.json 并再次安装
rm -rf node_modules package-lock.json
npm install
或者
如果 npm install loader 卡住,然后弹出..
npm 错误!代码 UNABLE_TO_GET_ISSUER_CERT_LOCALLY
npm 错误!错误号 UNABLE_TO_GET_ISSUER_CERT_LOCALLY
npm 错误!对https://registry.npmjs.org/jest的请求失败,原因:无法获取本地颁发者证书”
然后,
npm config set strict-ssl false
npm install
或者
按照卸载 Node.js 并正确安装
https://www.geeksforgeeks.org/how-to-completely-remove-node-js-from-windows/
https://coding-boot-camp.github.io/full-stack/nodejs/how-to-install-nodejs
我个人遇到了这个问题,并完成了我上面列出的所有步骤。我的问题已解决npm config set strict-ssl false
我在 Windows 10 上安装 electronjs 时挂起了 npm。我重新安装了它,但它仍然挂起。但我注意到它安装在同一网络中的另一个桌面上。所以最后我找到了罪魁祸首。该问题是由 Bitdefender 免费版引起的。防病毒软件没有警告,但它默默地阻止了它。一旦安装开始,即使控制台也没有关闭,因为它一直挂着。如果它在 Windows 上,请禁用防病毒/防火墙并确保网络是打开的,因为 npm 似乎没有适当的方式来通信网络块并且将无限期地继续进行。
npm cache clear --force
为我解决了这个问题。
我遇到过这个问题几次。
npm install
工作了。npm install
工作。对于 MacOS 上的任何人(我在 Mojave 10.14 上),以下内容帮助了我: https ://github.com/reactioncommerce/reaction/issues/1938#issuecomment-284207213
你会运行这些命令
echo kern.maxfiles=65536 | sudo tee -a /etc/sysctl.conf
echo kern.maxfilesperproc=65536 | sudo tee -a /etc/sysctl.conf
sudo sysctl -w kern.maxfiles=65536
sudo sysctl -w kern.maxfilesperproc=65536
ulimit -n 65536
然后再试npm install
一次。
万一其他人遇到这种情况,我让 npm install 运行足够长的时间,然后 Jest 扩展崩溃(v4.2.1),此时 npm install 成功完成。
Jest 配置似乎显示启用了测试自动监视功能。据我所知,我没有更改任何 Jest 设置,所以这必须是开箱即用的功能。
检查您的.npmrc
文件中的registry
条目(它标识充当包缓存的服务器。)
对我来说,npm install
会中途挂掉,这是因为我的.npmrc
文件中列出了旧的/无响应的服务器。删除该行或将其注释掉:
>cat ~/.npmrc
#registry=http://oldserver:4873
(和/或与您的 IT / 项目负责人核实它为什么不起作用;)
在我的情况下npm install
挂起,因为它正在等待我在从 git 存储库克隆时输入我的 ssh 密钥的密码。没有提示,我意识到当我输入随机字符并且没有回显时可能就是这种情况。就我而言,我必须查看package.json
文件并克隆那里列出的本地存储库。然后我将package.json
这些 git 存储库的路径更新并更改为我的本地路径。完成此操作后,其他所有内容均已安装,没有进一步错误。
卸载和安装node
并npm
为我工作。我正在使用 Ubuntu 20.04.1 LTS
检查 http 和 https 的环境变量
现有条目可能会产生一些问题。尝试删除这些条目。
再次运行“npm install”。
我遇到此错误是因为我在 WSL2 的(docker)容器中运行 npm,而 WSL2 中的 docker 在容器中配置了错误的名称服务器,导致容器无法解析主机。
要查看您的容器(甚至您的主机)是否可以解析主机,您可以尝试运行:curl https://github.com
. 就我而言,我收到了curl: (6) Could not resolve host: github.com
.
如果我不使用默认网桥,则不会发生 docker 容器中的错误,而是使用自定义网桥并用它定义容器,在这种情况下,resolv.conf
文件以正确的名称服务器结束:
$ cat /etc/resolv.conf
nameserver 127.0.0.11
options ndots:0
ip127.0.0.11
对应docker DNS服务器,解决了我的问题。
如果您没有在容器中运行 npm,您的问题可能仍然与某些配置错误resolv.conf
的文件有关(如果您在 Linux 机器中,或者在带有 WSL/WSL2 的 Windows 中)。
安装 nvm(节点版本管理器)并将节点版本从 14 降级到 12 解决了我的问题
我只是关闭了我的 Windows 防火墙,它对我有用。你也可以尝试不同版本的 npm。
*尝试做sudo npm install
。
*如果您使用的是 github,则可能是您没有权限,需要生成一个公共 SSH 密钥并将其添加到您的设置帐户:( https://help.github.com/articles/generating-ssh-键/ )