在前端团队开发,我们经常会存在多个 新旧项目 共同开发 的情况,这些项目他们依赖的node版本也不一样。项目中使用的包管理器也不一样。比如一些老的项目可能使用低版本 node 并使用 npm 安装项目依赖,而一些新的项目则会使用高版本 node 与 pnpm/yarn 来安装项目依赖。
如果node版本不统一,带来的问题就是整个项目不能运行。如果包管理器不统一,带来的就是、、在每个成员电脑上都不一致的灾难 (灾难: 很多项目本地运行可以的,然而在其他人的电脑上或者线上无法正常运行,这有可能是lock文件不统一导致了安装了错误版本的依赖包)。
有很多 优秀的 node的版本管理工具,例:nvm,n 等, 本文章我们根据官网的介绍讲解 volta 的使用;
是一个。管理 JavaScript 命令行工具的方式。
- 快速的: 快速无缝地安装和运行任何JS工具,,并一个时髦的, 无缝的在每个项目的版本切换。
- 可靠的: 。
- 跨平台: ,您: 即: volta 不仅可以管理 node,也可以管理包管理工具(例:yarn),还可以管理全局包。
- 可以根据项目的 声明的 volta 配置,来根据不同的项目自动切换 node 版本。
- volta 可以直接管理 pnpm 与 yarn (不建议,建议如果使用高版本的node,后面使用 corepack 来管理包管理工具)。
- 当使用 volta 安装的 node 来执行全局安装时,切换 node 版本后,全局安装的包仍然存在,并且其运行时所依赖的 node 版本会被固定为安装包时使用的 node 版本。
- 在 macos 与 linux 系统上安装:
讯享网
安装完成后命令还无法使用,这是因为添加到环境变量中后,还未生效,我们需要执行如下所示的命令来让其生效:
讯享网
- 在windows上安装:
注意: 第1步:在window下要启用开发人员模式,
打开的是默认微软英文网站,下方用对应的微软中文网站对照说明。 微软官网中文介绍介绍:开启方式查看:启用设备进行开发
具体开启操作:
win键+s-搜索 或者 开始-设置-搜索”开发人员”-打开开发人员模式,如下图:
第2️步:下载并运行window安装程序: 点击下载安装运行👉 👉 volta-1.1.1-windows-x86_64第3步:使用 volta 下载node,运行命令:
成功如下图:
如果无法安装node,可尝试如下操作: 如果还是错误或者卡住的话,或者因为某种原因下载不了,可尝试如下: 因为是某种原因导致直接使用终端下载不成功,直接去下载node官网版本仓库指定版本的后缀为 zip 的包,
- 根据 ,例如:

- 找到 ,:

- 执行命令安装:
讯享网
volta install 命令,将设置工具的默认版本。如果尚未在本地缓存,它也会获取该工具。该命令可以安装工具到我们的工具链上,简单理解:该命令可以安装 node 也可以安装其他包管理工具,例:yarn;
使用命令格式:
配置如下:
区别:
- 不加任何 使用 ;有信息
- 增加 参数, 有 详细信息日志输出。
- 增加参数,屏蔽任何日志输出。

工具安装可选项目:

可以安装 node, yarn, 以及 package。
-
安装最新版本node(最新版本可能不是稳定版本);
-
安装最新稳定版本(LTS)的 node;
-
安装指定版本的node;

命令格式如:: 命令运行您检查已安装的Node版本信息,运行时,软件包管理器 和 带有二进制文件的软件包。
常用的有如下几种:
配置项:用来指定或格式化输出格式:
我们常用 volta 来安装不同版本的 node ,但是,例如:
- : 查看当前 volta 已安装的所有内容(包括: , , )
展示的内容分为3部分: - : 已经安装的所有node版本,(default)标识的即为你当前全局使用的node版本;
- : 已经安装的包管理工具;
- : 使用 安装的全局包,volta 会在这里列出,并固定其运行时的版本;
- : 查看已安装的node版本信息

- : 查看 yarn 包管理器版本信息
- : 查看已安装的node版本信息
- : 查看当前激活的工具信息
- : 查看你的默认工具信息

从Volta 0.9.0开始,您还可以使用或
volta uninstall 命令允许您删除使用 voltall install 安装的任何
使用 命令找磁盘的安装位置,手动删除 node 或 包管理工具。 mac 上显示或隐藏-隐藏文件夹: 进入到 下
删除 19.9.0 的node 后:
安装全局包 和 卸载全局包: 

- 在 Unix系统(MacOS)上完全卸载Volta需要两个步骤:
- 第1步:

- 第2步:编辑您的shell配置文件脚本,以删除提到Volta的两行。默认情况下,Volta定位的配置文件脚本是:
-
进行此更改后,您可能需要打开一个新的终端,因为许多shell缓存最近命令的位置
-
- 在window上卸载:在Windows上,可以通过在开始>设置>应用程序的列表中选择Volta并选择卸载来卸载Volta。
要求团队统一使用 volta, 安装完 , 进入项目使用 命令固定node版本。之后再进入项目,volta 会检测 package.json 中 声明的 node 版本,并自动切换到该 node 版本。

- 目前,不支持全局安装(例如),将导致错误。
- 目前没有自动迁移,因此,如果您之前将安装为Volta全局,则需要通过调用手动重新安装它。在启用支持并重新安装之前,您可以通过卸载之前安装的软件包。一旦您切换到本机pnpm支持,您可能无法通过调用同一命令来删除隔离的旧包,因为目前缺乏卸载实现。
我们通过 查看下 node 的执行位置。
全局包的执行位置同样为 下
在 目录下执行 查看文件详细信息:
这些可执行的二进制文件都被使用 连接符 软连接到了 这个可执行文件上了。
背后的原因: 当使用volta时,npm,node,yarn以及全局包的二进制文件被重定向到 目录下的对应可执行文件,而这些可执行文件都是 所创建的软连接。
是一个特殊的脚步, 它做了
- 如果是node,npm,yarn等命令,检测当前工作空间是否被 指定了node版本 和包管理器,如果是的话则重定向到目标版本。
- 如果是全局包,有npm,yarn安装的可执行文件,则定向到该可执行文件,并且使用安装该可执行文件时的node版本来执行该指令。
,使用 已经 被 node 官方视为一个 , 已经集成在 node 的最新发行 版本中,目前完整的支持 yarn 和 pnpm 切换,yarn 和 pnpm 在初始化项目的时候也会 将 写入到 中, corepack 必定是一个趋势,所以对于包管理器的管理来说,应当尽量使用 corepack 而非 volta。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/156204.html