为什么npm install 经常失败
Hello 您好,我是大粽子。深耕线上商城的攻城狮(程序员)一枚。
前言
这段时间真的是忙,最近能抽时间搞搞大家在自己环境中遇到的各种问题了,我呢就是见不得我的代码在你的电脑运行不起来的。就像姜子牙睡不着觉,必须得去陈塘关给哪吒把嘴擦干净才能睡着一样一样的。
还记得有次在电梯里,给前面一个美女把背上的蜜蜂打走了,还被嫌弃了。(人家那个蜜蜂其实是个装饰品,我做错了什么。。。)哈哈哈。 好久不见皮皮更健康。
谁应该看
科学 / 上网的同学可以忽略,针对网络环境不好且初次配置的同学。
为什么
来看看这段时间大家遇到的问题




这些也只是一部分,还有很多类似的问题群里隔三差五就会有人问道,但是基本的处理方式都是更换镜像,更换网络。不过上面这位风景作为头像的同学我很是敬佩他,他虽然不是软件开发者,但是他有开发者的独特潜力。
为什么 npm install 的时候需要安装git 因为npm依赖git服务检测版本,所以不能少,必备。
怎么处理
上次有发过一次暴力解决的文档,当有同学说用不起来,下面我就一步步实现下。为了更清晰的验证问题我特意安装一个windows的机器,环境很干净。




上面描述了现在win环境下干净的项目,注意win环境下展示还没安装git,我们可以试下直接将我已安装好的node_modules文件夹解压到上面截图的根目录能不能直接运行。能不能成功试下不就知道了。


干净的环境就是干净,像这样的问题还真只有干净的环境才会遇到。

这个方向竟然失败了,是的因为 vue/cli-plugin 等插件依赖github做版本管理,也有同学讲,为什么我的复制过来就能用,那是因为你已经安装过类似的环境,或者你的项目没有应用到类似需要github管理起来的npm包而已。
那么问题需要升级下,需要安装git且正确配置github ssh密钥。既然绕不过去,就继续开搞。
首先生成ssh key 再将key 配置到 github


为了保险,添加github ip 到host 文件
140.82.112.3 github.com
然后激动人心的时刻到了


推荐华为镜像站,满足大多数开发者需求。

常用镜像站:
npm ---- https://registry.npmjs.org/
cnpm --- http://r.cnpmjs.org/
* taobao - http://registry.npm.taobao.org/
edunpm - http://registry.enpmjs.org/
eu ----- http://registry.npmjs.eu/
au ----- http://registry.npmjs.org.au/
sl ----- http://npm.strongloop.com/
nj ----- https://registry.nodejitsu.com/
pt ----- http://registry.npmjs.pt/
总结
皆大欢喜的结果哈,也可以使用nrm工具切换和管理镜像站,如果在使用镜像站的情况下出现一些莫名其妙的问题,清理node_modules文件夹重新安装。如果还有问题,可能是镜像站同步npm时版本差异导致的,还是npm install 解决一切烦恼!
来总结下我们怎么成功运行起来的
- 下载crmeb代码 cd到admin WEB PC 管理端
- 安装git 并生成ssh key 设置到github账户中(有截图)
- 添加host 140.82.112.3 github.com
- 所在网络环境不好的可以设置下面表格的镜像地址,我测试时用的华为的镜像
- npm install 安装成功 愉快的玩耍
推荐阅读
为什么npm install 经常失败的更多相关文章
- electron demo项目npm install安装失败解决办法
electron官网提供的demo项目,在npm install 的时候总是报错显示安装失败, 解决办法:FQ即可成功安装.
- LInux下npm install 安装失败问题
现象: 今天公司自己动部署的Jenkins出现了问题,在执行npm install的时候,失败了,下载不到npm,在查阅了各种报错信息之后还是没有解决,发现用淘宝镜像进行安装时,也会有安装不成功的情况 ...
- 忽略npm install安装失败信息
在package.json目录下运行npm install命令时会提示某些模块安装失败,如下图所示: 不管你在.npmrc文件中设置了proxy.https-proxy和registry地址,它还 ...
- npm install 包 失败解决方法
在ionic 安装包的时候 npm install xxx --save 出现如下错误 查看日志文件 14 verbose stack SyntaxError: Unexpected token &l ...
- npm install node-sass失败
Cannot download "https://github.com/sass/node-sass/releases/download/v3.8.0/win32-x64-46_bindin ...
- npm install -g @angular/cli@latest 失败
一开始的ERROR信息是 error "@angular/compiler-cli" package was not properly installed 尝试方案二时又出现了以下 ...
- npm install 失败
总结列表: 1. There is already an open DataReader associated with this Connection which must be closed fi ...
- npm install 错误 安装 chromedriver 失败的解决办法
npm 安装 chromedriver 失败的解决办法npm 安装 chromedriver 时,偶尔会出错,错误提示类似于:npm ERR! chromedriver@2.35.0 install: ...
- npm install失败或者进度卡住解决办法 以及 nrm的使用
今天在使用npm install安装url-loader时,遇到下载进度条停止问题 因为已经提前更换了 淘宝的镜像,应该不是网络问题,通过 npm config set loglevel info 显 ...
随机推荐
- 6.11、制作windos虚拟机
1.下载kvm支持windows系统的驱动程序: cd /tmp/ wget https://fedorapeople.org/groups/virt/virtio-win/direct-downlo ...
- js 实时监听滚动条状态 判断滚动条位置
var scrollFunc = function (e) { e = e || window.event; var t = document.documentElement.scrollT ...
- Java数据库开发(二)之——DBCP连接数据库
1.载入jar包 DBCP需要以下几个jar包,可到apache及mysql的官网下载 2.程序编写 public static BasicDataSource ds = null; static f ...
- Java核心反射机制
Java核心反射机制: 基本反射: 反射是一种动态类的处理机制,通过Class类来实现反射机制: Class类的基本信息: Module java.base Package java.lang Cla ...
- 计算机、程序和java简介
内存 计算机的内存是由一个有序的字节序列组成,用于存储程序及程序需要的数据.你可以将内存想象成计算机执行程序的工作区域.一个程序和它的数据在被CPU执行前必须移到计算机的内存中. 每个字节都是有一个唯 ...
- 如何快速实现一个虚拟 DOM 系统
虚拟 DOM 是目前主流前端框架的技术核心之一,本文阐述如何实现一个简单的虚拟 DOM 系统. 为什么需要虚拟 DOM? 虚拟 DOM 就是一棵由虚拟节点组成的树,这棵树展现了真实 DOM 的结构.这 ...
- Swoole_process实现进程池的方法
Swoole 的进程之间有两种通信方式,一种是消息队列(queue),另一种是管道(pipe),对swoole_process 的研究在swoole中显得尤为重要. 预备知识 IO多路复用 swool ...
- WPF技巧:通过代码片段管理器编写自己常用的代码模板提示效率
在写自定义控件的时候,有一部分功能是当内部的值发生变化时,需要通知控件的使用者,而当我在写依赖项属性的时候,我可以通过popdp对应的代码模板来完成对应的代码,但是当我来写属性更改回调的时候,却发现没 ...
- 【重学Java】多线程基础(三种创建方式,线程安全,生产者消费者)
实现多线程 简单了解多线程[理解] 是指从软件或者硬件上实现多个线程并发执行的技术. 具有多线程能力的计算机因有硬件支持而能够在同一时间执行多个线程,提升性能. 并发和并行[理解] 并行:在同一时刻, ...
- QT. 学习之路 一
初识QT 一: hello-world: #include "mainwindow.h" #include <QApplication> #include < ...