nrm管理镜像源、node包管理yarn与npm的区别、常见报错:【不是内部或外部命令、certificate has expired,WARN deprecated tar】

12 篇文章 0 订阅

目录

npm

yarn

使用

help查看命令列表

设置镜像源registry

安装全部包

安装单个包

移除单个包

更新

nrm:镜像管理包

安装包失败

解决

a.镜像源旧,导致包和官方镜像源不一致,依赖冲突

b.有时yarn/npm不成功可以用npm/yarn安装

c.用官方源+VPN

d.无法安装:拷贝覆盖,mac可能遇到无法跳过的安全验证问题

e.公司内部的包,可以删掉,安装完官方包后,再切换公司源 单独安装

f.更新npm

复原安装之前的环境

a.清空未安装成功的缓存

b.删除node_modules安装的依赖包+lock文件

报错

全局/局部安装与环境变量

yarn 不是内部或外部命令

xx  不是内部或外部命令,也不是可运行的程序或批处理文件错误

xx  command not found

cross-env: command not found

原因:全局安装的cross-env没有正确地链接到本地

原因:本地安装 node_modules/.bin目录没有添加到了PATH环境变量中

yarn/npm certificate has expired:HTTPS 证书过期

原因

a.淘宝镜像过期

b.镜像源不符合SSL安全套接协议

npm ERR! code ENOTFOUND npm ERR! syscall getaddrinfo npm ERR! errno ENOTFOUN

原因

a.没设置镜像源

b.*代理设置

c.镜像源不符合SSL安全套接协议

npm WARN deprecated tar@2.2.2: This version of tar is no longer supported, and will not receive ...

原因:tar版本过低,需要升级

解决

1.确认Node >= 14.0.0 and npm >= 5.6

2.npm install -g tar


npm

 Node Package Manager ,node包管理器 

是nodeJS的一个程序包管理和分发的管理工具,npm完全用 JavaScript 写成,

它可以让全世界与Web前端相关开发者共享代码,非常方便的使用各种插件、库和框架

windows:npm安装

windows:Nodejs安装教程

Node.js — Download Node.js®

tnpm(淘宝的 npm 镜像工具)

yarn

npm install -g yarn

yarn由Facebook为解决npm的一些问题而创建的

快速

  • 本地缓存+并行下载 - Yarn并行下载,还可以直接从硬盘缓存中读取包,因此可以显著提高速度。
  • 网络连接问题处理 - 当Yarn发现任何网络连接问题时,它会自动重试请求,保存响应并继续构建 - 这使得它更容易处理比npm更可靠且快速的环境。

稳定

  • 确定性安装 - Yarn能够在包含区别式锁文件(yarn.lock)的情况下进行精确的依赖项安装,每次运行生成相同的代码版本,与开发者上次运行相同。npm也有类似的功能,但是许多开发人员选择使用Yarn锁定其依赖关系以消除任何可能的不确定性。
  • 强制命令 - 通过添加--force标志,Yarn可以强制执行某些操作。这可能看起来像是一种强制手段,但它实际上是保证操作按期望进行的一种方法。npm也有许多命令选项,但是Yarn的操作强迫执行机制通常要好得多。

使用

help查看命令列表

npm help                                                       
npm <command>

Usage:

npm install        install all the dependencies in your project
npm install <foo>  add the <foo> dependency to your project
npm test           run this project's tests
npm run <foo>      run the script named <foo>
npm <command> -h   quick help on <command>
npm -l             display usage info for all commands
npm help <term>    search for help on <term>
npm help npm       more involved overview

设置镜像源registry

(镜像源更新于 2024/6)

npm 方式

# 查询当前使用的镜像源
npm get registry

# 设置为淘宝镜像源
npm config set registry https://registry.npmmirror.com/

# 还原为官方镜像源
npm config set registry https://registry.npmjs.org/

yarn方式

# 查询当前使用的镜像源
yarn config get registry

# 设置为淘宝镜像源
yarn config set registry https://registry.npmmirror.com/

# 还原为官方镜像源
yarn config set registry https://registry.yarnpkg.com/

npm、yarn、pnpm 最新国内镜像源设置和常见问题解决_npm 国内源-CSDN博客

安装全部包

按照package.json一键安装包,并将包及它的所有依赖项保存进yarn.lock

npm/yarn install,可简写为npm i

安装单个包

yarn add

npm install

npm install 包@版本号

npm install vue-i18n@^8.28.2

--save 参数告诉 npm 在安装包的同时更新 package.json 文件中的 dependencies 字段。

自 npm 5.0.0 版本起,安装包时自动保存依赖信息到 package.json 文件中。

移除单个包

yarn remove

npm uninstall

更新

yarn upgrade

npm update

nrm:镜像管理包

npm install -g nrm 安装

nrm ls 查看镜像源列表

nrm use 镜像源名

安装包失败

一般node、npm版本与原项目相差不大没问题

解决

a.镜像源旧,导致包和官方镜像源不一致,依赖冲突

b.有时yarn/npm不成功可以用npm/yarn安装

c.用官方源+VPN

d.无法安装:拷贝覆盖,mac可能遇到无法跳过的安全验证问题

e.公司内部的包,可以删掉,安装完官方包后,再切换公司源 单独安装

f.更新npm

复原安装之前的环境

a.清空未安装成功的缓存

npm/yarn cache clean

npm cache clean --force

b.删除node_modules安装的依赖包+lock文件

如果安装错了,可以删除重安

rm -rf node_modules

rm -rf node_modules package-lock.json

rm -rf 命令是递归地强制删除目录,不会将文件移动到垃圾桶或回收站,而是直接从文件系统中删除。

报错

全局/局部安装与环境变量

安装一个命令行工具(如 npmyarngit 等),这些工具的可执行文件通常位于 /usr/local/bin 或类似路径。(局部安装通常是 ~/.local/bin

为了能够在任何目录直接使用这些命令,需要将包含这些目录添加到系统环境变量 $PATH 中

yarn 不是内部或外部命令

yarn的路径配置进环境变量PATH

配置完环境变量,都必须重启cmd,才会生效xxx 不是内部或外部命令,也不是可运行的程序或批处理文件错误

xx  不是内部或外部命令,也不是可运行的程序或批处理文件错误

npm install 或者 yarn add xx

xx  command not found

npm install 或者 yarn add xx

cross-env: command not found

cross-env设置跨环境的环境变量的Node.js的库

npm install 或者 yarn add xx

最后通用方法:

npm cache clean --force

npm install --save-dev cross-env

原因:全局安装的cross-env没有正确地链接到本地

npm link cross-env

原因:本地安装 node_modules/.bin目录没有添加到了PATH环境变量中

需要检查你的shell环境配置文件(如.bashrc.bash_profile.zshrc等),确认是否有相关的路径设置出现问题。

yarn/npm certificate has expired:HTTPS 证书过期

原因

a.淘宝镜像过期

第一步:清空缓存
npm cache clean --force

第二步:重新设置新的镜像源
npm config set registry https://registry.npmmirror.com

第三步:使用npm安装工具,没有再报错了
npm install

b.镜像源不符合SSL安全套接协议

如果还是更新镜像源还是不行的话,

将 https改成http(npm config set registry http://registry.cnpmjs.org/)

或  禁用ssl
npm cache clean --force

npm config set strict-ssl false
npm install

npm ERR! code ENOTFOUND npm ERR! syscall getaddrinfo npm ERR! errno ENOTFOUN

原因

ENOTFOUND 网络请求无法找到对应的服务器地址。通常因为网络配置 或者 DNS解析问题。

a.没设置镜像源

解决方法:
1、执行:
 
npm config get proxy //HTTP 请求时所使用的代理服务器地址
npm config get https-proxy //npm 在进行 HTTPS 请求时所使用的代理服务器地址

2、若有返回值不为null,则设空:
npm config set proxy null
npm config set https-proxy null
3、执行:
 
npm config set registry https://registry.cnpmjs.org/

4.若还是不行,手动修改npmrc文件(隐藏文件,直接搜索即可),

将以下内容替换所有的原有内容

http-proxy=http://proxyhost/:proxyport
strict-ssl=false
registry=https://registry.npmjs.org/

b.*代理设置

  • npm config get proxy 和 npm config get https-proxy 查看当前代理设置。
  • 如果需要设置或更改代理,可以使用 
  • npm config set proxy http://proxy-server-url:port 
  • npm config set https-proxy http://proxy-server-url:port
c.镜像源不符合SSL安全套接协议

如果还是更新镜像源还是不行的话,

将 https改成http(npm config set registry http://registry.cnpmjs.org/)

或  禁用ssl
npm cache clean --force

npm config set strict-ssl false
npm install

npm WARN deprecated tar@2.2.2: This version of tar is no longer supported, and will not receive ...

原因:tar版本过低,需要升级

tar是UNIX/Linux系统上的压缩文件格式

解决

1.确认Node >= 14.0.0 and npm >= 5.6
2.npm install -g tar
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值