package-lock.json导致npm install安装nyc出现超时错误

一、背景

前端项目在npm install安装依赖,无法下载组件nyc,详细报错信息:

npm ERR! code CERT_HAS_EXPIRED
npm ERR! errno CERT_HAS_EXPIRED
npm ERR! request to https://registry.npm.taobao.org/nyc/download/nyc-13.3.0.tgz?cache=0&sync_timestamp=1577063702985&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnyc%2Fdownload%2Fnyc-13.3.0.tgz failed, reason: certificate has expired

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/xxx/.npm/_logs/2024-05-15T07_47_05_922Z-debug.log

访问网址https://registry.npm.taobao.org/nyc/download/nyc-13.3.0.tgz?cache=0&sync_timestamp=1577063702985&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnyc%2Fdownload%2Fnyc-13.3.0.tgz,出现证书过期的提示,见下:

在这里插入图片描述

这里有个背景需要交待一下:

我们对前端依赖建立了私有仓库nexus,但是这里并没有走私有仓库,仍旧使用了淘宝镜像仓库registry.npm.taobao.org。

二、npm build流程图

在这里插入图片描述

nodejs应用程序配置了私有仓库,期望所有的依赖都走私有仓库。

npm config set registry http://192.168.xx.xx:8080/repository/npm-xx-public/

但是,从报错信息可以得知,npm install的时候实际上是直接请求registry.npm.taobao.org。

这是因为本地已有package-lock.json文件,指明了下载nyc的请求地址。
在这里插入图片描述

下一步,我们到nexus私有仓库看一看nyc组件。。

三、nexus Npm私有仓库

在这里插入图片描述
在这里插入图片描述
由此可知,nexus私有仓库已有nyc组件,且是从淘宝镜像仓库下载而来。

那么,怎么去解决npm install不从私有仓库下载依赖的问题呢?

四、解决问题

1、解决办法1-删掉package-lock.json,重新安装

它会生成一个新的package-lock.json文件

在这里插入图片描述

2、解决办法2-安装的时候指定仓库

npm install --registry http://192.168.xx.xx:8080/repository/npm-xx-public/

你也可以在package.json对此进行封装,放入scripts脚本。

在这里插入图片描述
执行安装命令: npm run xx
xx是你的scripts脚本名。

五、总结

本文讲述了一个安装nyc依赖出现异常的案例,yarn 安装 也是类似的道理。
不同的是,yarn安装后生成的文件是yarn.lock,npm安装后生成的文件是package-lock.json

最好的处理方式就是忽略yarn.lock和package-lock.json文件,确保设置的私有仓库地址总是有效。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/631910.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

析构函数详解

目录 析构函数概念特性对象的销毁顺序 感谢各位大佬对我的支持,如果我的文章对你有用,欢迎点击以下链接 🐒🐒🐒 个人主页 🥸🥸🥸 C语言 🐿️🐿️🐿️ C语言例题 &…

开源标注工具LabelMe的使用

开源标注工具LabelMe使用Python实现,并使用Qt作为其图形界面,进行图像多边形标注。源码地址:https://github.com/labelmeai/labelme ,最新发布版本为v5.4.1,它遵循GNU通用公共许可证的条款。 1.Features (1).多边形、矩形、圆形、…

Linux下mysql备份

参考文章: Linux实现MySQL数据库数据自动备份,并定期删除以前备份文件-CSDN博客文章浏览阅读7.2k次,点赞7次,收藏29次。引言在学习过程中遇到了一个问题,见图:当我进入服务器的数据库时,原来的…

羊大师:羊奶健康的成长伴侣

羊大师:羊奶健康的成长伴侣 在追求健康生活的当下,越来越多的人开始关注饮食的营养与健康。羊大师发现在众多天然食品中,羊奶以其独特的营养价值和健康益处,逐渐成为了人们的新宠。特别是对于正在成长发育的孩子们来说&#xff0…

客户端Web资源缓存

为了提高Web服务器的性能,其中的一种可以提高Web服务器性能的方法就是采用缓存技术。 1.缓存 1.1.什么是缓存? 如果某个资源的计算耗时或耗资源,则执行一次并存储结果。当有人随后请求该资源时,返回存储的结果,而不是再次计算。…

免费视频格式在线转换网站,推荐这5款!

在数字化时代,视频已成为我们日常生活和工作中不可或缺的一部分。然而,随着各种设备和平台的不断涌现,视频格式繁多,常常会出现不兼容的情况。为了解决这一问题,视频格式在线转换网站应运而生,成为了我们应…

【数据结构】排序(归并排序,计数排序)

一、归并排序 基本思想: 归并排序(MERGE-SORT)是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列&#xf…

百度百舸 AIAK-LLM 的大模型训练和推理加速实践

本文整理自 4 月 16 日的 2024 百度 Create 大会的公开课分享《百舸 AIAK-LLM:大模型训练和推理加速实践》。 今天要分享的主题是 AI Infra 相关的内容,主要内容分为四部分。 首先和大家一起讨论大模型给基础设施带来的挑战。第二部分则是向大家介绍一个…

力扣HOT100 - 32. 最长有效括号

解题思路&#xff1a; 栈 class Solution {public int longestValidParentheses(String s) {int max 0;// 也可以使用 Stack<Integer> stacknew Stack<>();但Stack是遗留类&#xff0c;不推荐Deque<Integer> stack new LinkedList<>();stack.push(…

犀牛Rhinoceros 8创建、编辑、分析、记录、渲染、制作动画和转换

Rhino - 多功能 3D 建模器。 Rhinoceros 可以创建、编辑、分析、记录、渲染、制作动画和转换 NURBS* 曲线、曲面、实体、点云和多边形网格。除了硬件之外&#xff0c;复杂性、程度或大小没有任何限制。 特殊功能包括&#xff1a; -不受约束的自由形式 3D 建模工具&#xff0c;…

【汇编】算术指令

一、加法指令 &#xff08;一&#xff09;各加法指令的格式及操作 加法指令可做字或字节运算 &#xff08;1&#xff09;加法指令 ADD 格式&#xff1a;ADD DST,SRC执行的操作&#xff1a;(DST) ← (SRC)(DST) &#xff08;2&#xff09;带进位加法指令 ADC 格式&#xf…

ENZO--Leptin (human) ELISA kit

瘦素(Leptin)是由ob基因编码、在脂肪组织中生成的一种脂肪代谢调控产物&#xff0c;在代谢和调控体重等方面发挥重要作用。它通过下丘脑中的瘦素受体发出信号&#xff0c;降低食欲&#xff0c;增加能量消耗。在外周组织中&#xff0c;瘦素能拮抗胰岛素信号传导&#xff0c;增加…

目标检测标注工具Labelimg安装与使用

目录 一、安装Labelimg与打开 二、使用 1、基本功能介绍 2、快捷键 3、状态栏的工具 4、数据准备 5、标注 三、附录 1、YOLO模式创建标签的样式 2、create ML模式创建标签的样式 3、PascalVOC模式创建标签的样式 一、安装Labelimg与打开 源码网址&#xff1a;Label…

前端通知组件封装

背景 实现如上图效果&#xff1a;点击小铃铛&#xff0c;从右侧展示通知&#xff0c;点击其中一条跳&#xff0c;转到一个新页面&#xff1b;小铃铛数目减少&#xff1b; 实现 index.vue <template><el-drawerv-if"visible":visible.sync"visible&…

C#知识|上位机子窗体嵌入主窗体方法(实例)

哈喽,你好啊,我是雷工! 上位机开发中,经常会需要将子窗体嵌入到主窗体, 本节练习C#中在主窗体的某个容器中打开子窗体的方法。 01 需求说明 本节练习将【账号管理】子窗体在主窗体的panelMain容器中打开。 账号管理子窗体如下: 主窗体的panelMain容器位置如图: 02 实现…

【找到所有数组中消失的数字】leetcode,python

很菜的写法&#xff1a; class Solution:def findDisappearedNumbers(self, nums: List[int]) -> List[int]:nlen(nums)#存1-Nnum_1[i for i in range(1,n1)]#预存数num_2[]nums.sort()for i in nums:num_1[i-1]0for i in num_1:if i!0:num_2.append(i)return num_2能过但是…

计算机毕业设计hadoop+hive+hbase学情分析 在线教育大数据 课程推荐系统 机器学习 深度学习 人工智能 大数据毕业设计 知识图谱

毕 业 设 计&#xff08;论 文&#xff09;开 题 报 告 1&#xff0e;结合毕业设计&#xff08;论文&#xff09;课题情况&#xff0c;根据所查阅的文献资料&#xff0c;每人撰写不少于1000字的文献综述&#xff1a; 一、研究背景和意义 “互联网”和大数据带来了网络教育的蓬…

Java入门——异常

异常的背景 初识异常 我们曾经的代码中已经接触了一些 "异常" 了. 例如: //除以 0 System.out.println(10 / 0); // 执行结果 Exception in thread "main" java.lang.ArithmeticException: / by zero //数组下标越界 int[] arr {1, 2, 3}; System.out.…

C语言之指针初阶

目录 前言 一、内存与地址的关系 二、指针变量 三、野指针 四、const 五、传值调用与传址调用 总结 前言 本文主要介绍C语言指针的一些基础知识&#xff0c;为后面深入理解指针打下基础&#xff0c;因此本文内容主要包括内存与地址的关系&#xff0c;指针的基本语法&…

LiveGBS流媒体平台GB/T28181用户手册-服务器概览:通道信息、负载信息、CPU使用、存储使用、带宽使用(Mbps)、内存使用

LiveGBS用户手册-服务器概览&#xff1a;通道信息、负载信息、CPU使用、存储使用、带宽使用&#xff08;Mbps&#xff09;、内存使用 1、服务器概览1.1、通道信息1.2、负载信息1.2.1、信息说明1.2.2、会话列表 1.3、CPU使用1.4、存储使用1.5、带宽使用&#xff08;Mbps&#xf…