《npm安装依赖、Jenkins打包系列问题》遇到问题可以在此处跟,定期补充进来

此处记录前端 Jenkins及下载依赖时碰到的各类问题

问题1:globalThis is not defined

问题现象

构建时出现的错误截图:
在这里插入图片描述

查了一下说要升级node?

https://stackoverflow.com/questions/66586352/referenceerror-globalthis-is-not-defined

在这里插入图片描述

可是公司环境基本上node都是10.xxx版本,升级是定然不行的。

解决办法

不需要升级node版本

固定sass版本后可正常打包


问题2:在安装依赖时出现npm ERR! code EINTERGRITY

问题现象:

截图:如下提示,这种情况:

在这里插入图片描述

先检查一下自己或Jenkins网络是不是能通地址(ping 或 telnet)

https://registry.npmmirror.com/ 国内镜像库

解决办法:

如果网络没问题,执行如下命令配置

npm config set registry https://registry.npmmirror.com/

配置成功后大概是这样的。重点是registry

再装依赖试试,如果还不行看看版本是不是2.1以下私有库,需要单独指定安装。

那就是

npm i [email protected]

问题3:JavaScript heap out of memory

这问题看起来非常像是内存超了,当时找了运维加内存,临时解决了。但是加了8个G,运维怒了!

让我们继续排查什么原因,后来发现下面截图中的有个关键的sass什么的,想着估计是它的问题,因为升级版本了。

问题现象:

在这里插入图片描述
在这里插入图片描述

解决办法:

报以上截图中二个错误都可把 sass 版本固定为:1.55.0;(或者当前package.json用的什么版本直接把^~等符号去掉再试试)


问题4:token.type.endsWith is not a function

问题现象:

在这里插入图片描述

又是个什么神仙错误,反正网上一查,排查了很久定位大概率是eslint的问题, 然后在github发现有个 issue 讨论过这个问题。并且找到了

解决办法:

在这里插入图片描述

package.json这个地方把babel-eslint改一下,8.2.1 / 8.2.2 都行。

{
    
    "babel-eslint": "^8.2.1"}

问题5:gyp ERR! find Python

在这里插入图片描述

提示缺少Python环境

执行命令全局安装

npm install --global --production windows-build-tools

还没解决可以再查一下

问题6:Node Sass node-sass version 7.0.1

报错信息

Syntax Error: Error: Node Sass version 7.0.1 is incompatible with ^4.0.0.
问题原因
node版本和node-sass版本不兼容

解决办法

查找自己的node版本对应的node-sass版本,查找地址:https://www.npmjs.com/package/node-sass

安装对应版本的node-sass

在这里插入图片描述

通过node -v确认安装的Node版本

在这里插入图片描述

通过 npm view node-sass versions查询版本列表
在这里插入图片描述

本次我们安装5.0.0的node-sass版本

猜你喜欢

转载自blog.csdn.net/m0_37680500/article/details/132187655