问题说明

Jenkins构建前端安装依赖报错:

npm ERR! code EINTEGRITY
11:05:42 npm ERR! sha512-IJy2B5Ot9wIAGwjSKF94+8yhVCQUDBT4myzlswuJSNPcLcn3Jna3yPNOmp/mbXfPPSNFwV9td/8jadAPesUn7g== integrity checksum failed when using sha512: wanted sha512-IJy2B5Ot9wIAGwjSKF94+8yhVCQUDBT4myzlswuJSNPcLcn3Jna3yPNOmp/mbXfPPSNFwV9td/8jadAPesUn7g== but got sha512-DqWOWyL129Y56DPwO3VYTkcjILCS5szGZEaGgGVqdzBjCWiqVd2MqWDhnCvUpeSmXqnDV1uNlSpOIawwW/k8/Q==. (923576 bytes)

查了网上的一些说明,有的说可以删除package-lock.json重新安装可解决,而我这个是公司封装的前端工具做的,看不到这个文件。

问题分析

EINTEGRITY 错误码表示在npm缓存中无法找到 指定sha512校验合的模块,得到的却是另一个。就好比你在桌子上放了块蛋糕被人换成了果汁,你还按蛋糕的信息去找肯定得不到蛋糕。

出现这个问题的原因是缓存不一致,一般安装前端依赖时的package-lock.json会记录每个依赖的文件校验和,再安装依赖时如果出问题就是缓存变了而package-lock.json还是旧的,常见于全局缓存。

还有一个就是有一个依赖在全局缓存和当前项目缓存(node_modules)中都存在但版本不同,缓存校验和对不上。

所以解决办法应该有两种:1、删除记录检验和的记录文件 2、清理缓存

解决方案

方案1 删除package-lock.json

适用于当前构建目录有package-lock.json文件,删除它,然后重新安装前端依赖即可。

方案2 缓存校验

npm cache verify

后边会解释它的作用。校验完后重新安装前端依赖即可。

方案3 强制缓存清理

npm cache clean --force

后边会解释它的作用。校验完后重新安装前端依赖即可。

官方文档怎么说

https://docs.npmjs.com/cli/v6/commands/npm-cache

根据npm v6的文档,可以简单理解npm缓存是安装依赖时就缓存,也可以自己去添加缓存,它本身不保证缓存的可靠性,也就是说如果能发现缓存就直接取。而且npm不会自主删除缓存,这就导致缓存目录会随着安装依赖的增多而变大,有损坏的内容也不会自动删除。

有损坏的内容或者缓存需要校验时,可以执行 npm cache verify 校验缓存目录的内容,清理不需要的数据,验证缓存索引与缓存数据的完整性。

比较强制的办法就是直接删除缓存目录所有数据,对应的命令是 npm cache clean --force

(本文完)

【问题解决】npm ERR! code EINTEGRITY的更多相关文章

  1. 安装Vue2的devtools发生错误npm ERR! code EINTEGRITY npm ERR! sha1-HTFDXrRzR2Ew8Bv9zlMSCVgPsS0= integrity checksum failed when using sha1: wanted sha1-HTFDXrRzR2Ew8Bv9zlMSCVgPsS0= but got sha1-Z6BeTMF4nhAO6h5A

    1.github下载地址:https://github.com/vuejs/vue-devtools 2.下载好后进入vue-devtools-master工程  执行npm install ---- ...

  2. npm ERR! code EINTEGRITY npm! ERR! shal-

    npm ERR! code EINTEGRITY npm ERR! sha1-nbqdpC/e8IOA7poHctXL5+bVXsE= integrity checksum failed when u ...

  3. npm install出错,npm ERR! code EINTEGRITY npm ERR! Verification failed while extracting url-parse@1.4.3

    npm install时出现以下错误: npm ERR! code EINTEGRITY npm ERR! Verification failed while extracting url-parse ...

  4. 执行npm install报错:npm ERR! code EINTEGRITY

    命令行执行npm install报错如下: D:\frontend\viewsdev>npm install npm ERR! code EINTEGRITY npm ERR! sha512-8 ...

  5. npm ERR! code EINTEGRITY npm ERR! sha1- 报错解决办法

    npm ERR! code EINTEGRITY npm ERR! sha1- 报错日志 npm ERR! code EINTEGRITY npm ERR! sha1-OGchPo3Xm/Ho8jAM ...

  6. npm install 报错:ERR! code EINTEGRITY 解决方案

    npm升级后,npm install 报错了,报错信息:ERR! code EINTEGRITY到处百度搜索解决方案,终于找到了!“npm cache verify”这条命令帮助了不少人 npm ca ...

  7. npm ERR! code ENOENT

    npm ERR! path F:\VsCodeWorkspace\labWeb\front\LabWebAdminFrontEnd\node_modules\core-jsnpm ERR! code ...

  8. 解决NPM无法安装任何包的解决方案(npm ERR! code MODULE_NOT_FOUND)

    前言 今天突然发现npm无法使用了,执行任何命令都报如下错误: npm ERR! code MODULE_NOT_FOUND npm ERR! Cannot find module 'internal ...

  9. npm ERR! code: 'EPERM' (权限问题 errro permit)

    PS C:\Users\user\Desktop\test\my-project> npm run iview --save npm ERR! missing script: iview npm ...

随机推荐

  1. python发QQ邮件

    python发qq邮件相对比较简单,网上教程一大把:固定套路,后面封装看自己怎么方便可以怎样进行封装:原版代码如下: """ # -*- coding : utf-8 - ...

  2. 苹果宣布 2022 年 Apple 设计大奖得主

    Apple 今日举办了年度 Apple 设计大奖颁奖仪式,表彰 12 款出类拔萃的 app 与游戏佳作.今年的获奖者包括来自全球各地的开发者.他们通过 app 呈现锐意创新.别出心裁的优美设计体验,以 ...

  3. NetCore框架WTM的分表分库实现

    介绍 本期主角: ShardingCore 一款ef-core下高性能.轻量级针对分表分库读写分离的解决方案,具有零依赖.零学习成本.零业务代码入侵 WTM WalkingTec.Mvvm框架(简称W ...

  4. JavaScript数据类型BigInt实践之id数值太大,导致前后端交互异常

    项目开发中前后端数据交互常会使用id作为主键索引,通常id数值都不大,使用number类型就可以表示处理,但对于一些分布式id或其他情况,id数值太大且超过了JS的最大处理数(Math.pow(2,  ...

  5. 如何从0开发一个Vue组件库并发布到npm

    1.新建文件夹在终端打开执行 npm init -y 生成package.json如下,注意如果要发布到npm,name不能有下划线,大写字母等 { "name": "v ...

  6. webpack中文api

    1.      简介 1.Plugins://插件 webpack has a rich plugin interface.Most of the features are internal plug ...

  7. 【python基础】第01回 计算机基础1

    本章内容概要 1.文件路径2.typora主要功能介绍3.typora语法学习(markdown)4.计算机的本质5.计算机五大组成部分6.网络博文编写教程 本章内容详解 1.文件路径 --路径:可以 ...

  8. Python自动化办公:批量将文件按分类保存,文件再多,只需一秒钟解决

    序言 (https://jq.qq.com/?_wv=1027&k=GmeRhIX0) 当我们电脑里面的文本或者或者文件夹太多了,有时候想找到自己想要的文件,只能通过去搜索文件名,要是名字忘记 ...

  9. Tapdata “设擂招贤”携手 LeetCode 举办全球极客技术竞赛

      2021年11月28日 Tapdata 专场全球极客技术竞赛将在 LeetCode 平台开赛,面向程序员"设擂招贤",打擂成功的前50名挑战者将优先获得 Tapdata 高端技 ...

  10. Ajax:异步的JS和XML

    1.Ajax1) AJAX 是 Asynchronous JavaScript And XML 的简称.直译为,异步的JS和XML.2) AJAX的实际意义是,不发生页面跳转.异步载入内容并改写页面内 ...