解决 npm xxx was blocked, reason: xx bad guy, steal env and delete files

devtools/2024/11/24 13:39:02/

问题复现

今天一位朋友说,vue2的老项目安装不老依赖,报错内容如下:

npm install      
451 Unavailable For Legal Reasons - GET https://registry.npmmirror.com/vab-count - [UNAVAILABLE_FOR_LEGAL_REASONS] vab-count was blocked, reason: vabjs bad guy, steal env and delete files. (operator: cnpmcore_admin/61f154594ce7cf8f5827edf8)

搜了一下发现  vab-croppers 和 vab-count已经被npm列入了黑名单

问题分析:

package.json 默认走 npm源,但是 被  https://registry.npmmirror.com  禁用了,下载不来, 没有被默认的  https://registry.npmis.org 禁用,就用 npm pack vab-croppers --registry=https://registry.npmjs.org/ 下载源码 ,再将源码部署到 git , 替换package.json的引用就行;
还有一种方式就是 将源 指定为  https://registry.npmjs.org 直接下,可惜慢需要梯子;

方案一:替换npm包的地址为git

下载源码:

npm pack vab-croppers --registry=https://registry.npmjs.org/
npm pack vab-templates --registry=https://registry.npmjs.org/
npm pack vab-count --registry=https://registry.npmjs.org/

修改package.json 为git地址 

{​​​​​​​"vab-count": "git+https://gitee.com/ggbhack/vab-count.git",
"vab-croppers": "git+https://gitee.com/ggbhack/vab-croppers.git",
"vab-templates": "git+https://gitee.com/ggbhack/vab-templates.git",
}

方案二:替换npm的源

 https://registry.npmmirror.com 替换为  https://registry.npmjs.org

唠叨一下;为了后续项目正常运行,最好用方式一,做一个备份;就怕这些依赖包,那天也被 npmjs给加入黑名单,那么这个项目估计也就黄了;


http://www.ppmy.cn/devtools/136558.html

相关文章

cudatoolkit安装(nvcc -V错误版本解决)

CudaToolKit安装(nvcc) cudatoolkit 是 CUDA 开发工具包(CUDA Toolkit) 的核心部分,包含了一系列用于开发和运行 CUDA 应用程序的软件组件。nvcc 是 NVIDIA CUDA 编译器驱动,用于将 CUDA C/C 代码编译成可…

数据新时代:如何选择现代数据治理平台(上)

谈现代数据治理系统的十大架构特征 最近一位老友找到我,咨询他的数据治理平台到底该不该换,背景是这样的:若干年前采购了一个市场主流的数据治理平台,功能大概就是数据治理三件套——标准、元数据和质量等经典数据治理的功能。现…

基于AXI PCIE IP的FPGA PCIE卡示意图

创作不易,转载请注明出处:https://blog.csdn.net/csdn_gddf102384398/article/details/143926217 上图中,在FPGA PCIE卡示意图内,有2个AXI Master设备,即:PCIE到AXI4-Full-Master桥、AXI CDMA IP&#xff1…

案例研究|阿特斯的JumpServer分布式部署和多组织管理实践

苏州阿特斯阳光电力科技有限公司(以下简称为阿特斯)是一家集太阳能光伏组件制造和为全球客户提供太阳能应用产品研发、设计、制造、销售的专业公司。 阿特斯集团总部位于加拿大,中国区总部位于江苏省苏州市。通过全球战略和多元化的市场布局…

美团面试:有哪些情况会产生死锁

前言 我们首先需要知道,死锁一定发生在并发场景中。为了保证线程安全,有时会给程序使用各种能保证并发安全的工具,尤其是锁,但是如果在加解锁过程中处理不恰当,就有可能适得其反,导致程序出现死锁的情况。…

http/https

1、http与https HTTPHTTPS信息明文传输加入ssl加密传输协议,可以使得报文加密传输默认端口80默认端口443连接简单TCP三次握手通信TCP三次握手后还要SSL/TLS握手过程,才可以加密报文传输无状态不安全需要到CA申请证书,身份认证,自…

MySQL索引失效案例

目录 1.全值匹配 2.最佳左前缀法则 3.主键插入顺序 4.计算、函数、类型转换(自动或手动)导致索引失效 5.类型转换导致索引失效 6.范围条件右边的列索引失效 7.不等于(! 或者<>)索引失效 8.is null可以使用索引&#xff0c;is not null无法使用索引 9.like以通配…

136.flask内置jinja2模版使用

文章目录 基本使用 基本使用 入口 # conding:utf-8 import os from flask import Flaskapp Flask(__name__,template_foldertemplate)app.config[SECRET_KEY] os.urandom(20)from controlle.index02 import index02 app.register_blueprint(index02)# 过滤器 app.template_f…