windows10下安装mise

先介绍下Mise 是什么

Mise = 现代多语言运行时版本管理器 前身是 rtx,对标:nvm + pyenv + goenv + jenv + sdkman 合体工具

一句话作用:一台电脑自由切换任意版本 Node、Python、Java、Go、PHP、Rust 等

特点:跨平台、统一命令、项目隔离、全局隔离、自动环境

优势:比 nvm 更全能,比 scoop/choco 更轻量,无依赖、绿色安装

背景

目前前端react项目都是用nvm来管理node版本,不管是开发者本机还是服务器上;在不同版本的node项目下,需要手动通过nvm use xxx的命令来切换node版本;


官网地址:mise


Windows 下正确安装方式

由于现在我们window10系统太低,PowerShell版本也很低,而且微软商店被网络限制禁掉了,所以直接按照官方文档来安装无法安装。

1. 下载scoop

csharp 复制代码
# 安装 Scoop
irm get.scoop.sh | iex

安装完输入:
scoop --version

不报错就是安装成功


2、装完 Scoop 后,直接装 mise

复制代码
scoop install mise

安装后输入,显示版本号表示安装成功

复制代码
mise -v 

3、配置环境变量,解决node找不到的问题

如果本地之前配置过nvm开头的环境变量和nodejs的环境变量,需要先删掉,但是为了保险起见,可以截图或者复制保存起来;我们选择不卸载nvm,但是删除环境变量的方式,保证了在无法达到预期情况下还有回退的路径;

接着添加mise的环境变量;如下图,环境变量指向shims的位置,是为了激活mise,因为本地PowerShell版本太低,所以采取这种方案。

4、下载node,验证环境变量配置是否成功

我们将首先安装 node@14.17.3 并将其设置为全局默认版本。输出版本号表示环境变量配置成功

perl 复制代码
mise use --global node@14.17.3
# v14.17.3
node -v
# v14.17.3

5、让我们进入项目目录,我们将在其中设置 node@20.19.0

perl 复制代码
cd myproj
mise use node@20.19.0
node -v
# 20.19.0

如图:

6、为什么选择mise

使用mise,不用使用命令切换node版本,它可以根据项目中的配置文件读取node所需版本并切换; 两种方式都可以创建配置文件;

1、手动创建,在根目录下创建.config/mise/config.toml,文件内容:

ini 复制代码
[tools]
node = "14.17.3"

2、命令行创建,进入项目文件后,mise use node@xxx,会自动创建配置文件与内容,配置文件内容和上面手动创建的一致。
同理,修改配置文件中node版本号之后,在控制台打印该项目下的node版本会随之更新。

7、安装多版本node后目录

如图所示,安装多个版本node后的目录长这样:


那基于不同node版本安装的全局依赖包又在哪呢?如图所示:

分别在对应版本的node_modules文件夹下,不同版本之间依赖包不共用,这样有效隔离,防止版本污染。

相关推荐
子兮曰1 天前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
子兮曰1 天前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
前端小万1 天前
写公众号赚了 3000 块后,我做了一款叫 "一键成稿" 的软件
前端·微信小程序
爱勇宝1 天前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
三十而立洋1 天前
Cookie 详解:从产生到安全,一次讲透
前端·javascript
卡布鲁1 天前
把一个 Vite + Vue3 应用塞进 qiankun (React + Umi3) 主站:十个坑的复盘
前端·javascript·react.js
汉堡大王95271 天前
Jev:不是聊天机器人, 而是一个智能 if 语句
前端·人工智能·后端
梦想很大很大1 天前
从运行事实到回归证据:Workrun 的 Telemetry 与 Evaluation 实践
前端·人工智能·后端
计算机魔术师1 天前
Meta Muse agent 接入 Shopify 的 Shop Pay 实现代理式购物
前端
沙蒿同学1 天前
我用 Go 搭了一条 AI Agent 流水线:从 1 张商品图到一整套淘宝详情页
前端·javascript·后端