目录
d.无法安装:拷贝覆盖,mac可能遇到无法跳过的安全验证问题
e.公司内部的包,可以删掉,安装完官方包后,再切换公司源 单独安装
xx 不是内部或外部命令,也不是可运行的程序或批处理文件错误
原因:本地安装 node_modules/.bin目录没有添加到了PATH环境变量中
yarn/npm certificate has expired:HTTPS 证书过期
npm ERR! code ENOTFOUND npm ERR! syscall getaddrinfo npm ERR! errno ENOTFOUN
npm WARN deprecated tar@2.2.2: This version of tar is no longer supported, and will not receive ...
1.确认Node >= 14.0.0 and npm >= 5.6
npm
Node Package Manager ,node包管理器
是nodeJS的一个程序包管理和分发的管理工具,npm完全用 JavaScript 写成,
它可以让全世界与Web前端相关开发者共享代码,非常方便的使用各种插件、库和框架
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
命令是递归地强制删除目录,不会将文件移动到垃圾桶或回收站,而是直接从文件系统中删除。
报错
全局/局部安装与环境变量
安装一个命令行工具(如 npm
、yarn
、git
等),这些工具的可执行文件通常位于 /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 --forcenpm 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 --forcenpm 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系统上的压缩文件格式