一天天的踩坑,时间就是这么不够用的。
工作这么多年,一直没用虚拟机过。这次由于工作需要,需要将环境都预先在虚拟机里搭建好。
这次虚拟机安装,不是与系统版本冲突就是各种问题,暂就不提了。主要就记录下费时较多印象较深的一些问题。
标题里错误原因,请看文章里第4个问题。
本文虚拟机软件:Vmware。
以前遇到这种问题,都是缺啥补啥。这次从100到140版本,我都已经拷贝到C:\Windows\SysWOW64文件夹里进去了。
卸载又重装,折腾了三四次,仍然还是报这种少了文件的错误。
经过百度尝试,下载DirectX工具进行修复,修改C++ Redistuibute系列,最终解决。
从本机拷贝文件到虚拟机,安装Vmware Tools就可以直接复制往虚拟机里粘贴了。
开始拷贝一些文件还很快,后面遇到项目代码,可能是Vendor文件过于繁多的缘故,四五百兆的代码,一动就是要三四十分钟,有时还拷贝一大部分,结果给你抛个“没有权限生成目录”的啥错误提示。把代码压缩了,能很快复制过去,可是在虚拟机里提取又却很慢,有时也会失败导致根本不能解压。
昨天光这就折腾了一两个小时。
最终下载了winrar解压文件,拷贝到虚拟机里安装好后,解压就快多了。
在虚拟机里安装好npm、python这些后,打包却报如下错误。
Found bindings for the following environments:
- Windows 64-bit with Node.js 10.x
- Windows 64-bit with Node.js 12.x
This usually happens because your environment has changed since running `npm install`.
Run `npm rebuild node-sass` to download the binding for your current environment.
上面提示,就是说我环境在上次执行npm install后可能有变动,建议执行如下命令,下载一些匹配当前环境的文件。
npm rebuild node-sass
执行这个命令后,先报的是找不到python2的问题,这个从网上下载python2.7安装包后,配置好环境变量,将python.exe改成python2.exe就好了。
后面可能中间动了一些动作,不知道什么原因一直报如下错误:
npm ERR! network request to https://registry.npmjs.org/node-sass failed, reason: getaddrinfo ENOTFOUND registry.npmjs.org
按错误提示,是网络问题,导致下载无法进行。照着网上设置淘宝镜像,也确认设置是成功了的,但仍然无法下载。
设置淘宝镜像:
npm config set registry https://registry.npm.taobao.org
验证设置结果:
npm config get registry
一直卡在这里,在网上再也搜不出更多的新花样了。
最终将虚拟机全屏,才发现网络是灰掉的。
这是由于中间为了测试设备,电脑连了网线到设备,ip改成设备同一网段了,从而导致了不能接到外网。
这个问题坑得自己都郁闷,命令一直报网络问题,死脑袋怎么想不到是网络的问题呢?
所以出现问题时,一定要切记检查源头是否OK
不然问题出在源头,你在下游就是折腾三天三夜也是没戏。
EDID,Extended display identification data,意思是扩展显示器识别数据。
经百度了解,EDID是存储在显示器这边某个地方里的一个值,连接设备后,主板需要读取这个值。
报错的提示,正是说明主板从显示器读取到的EDID值是不合法的。
我们导致这个问题的原因是:HDMI连接线会导致这个问题,换成VGA线就OK了。
这就是英语好的好处,虽然从没遇到这种问题,但看错误提示,再结合一些简单百度(例如EDID是什么)以及之前在家调试是OK的情形,就基本揣测出可能跟连接线有关。
本文为翟码农个人博客下有关开发踩坑经验分享的原创文章,转载请注明出处:http://www.zhai14.com/blog/the-experience-of-got-strapped.html