vue项目node版本过高导致vue-cli项目无法运行

vue项目node版本过高导致vue-cli项目无法运行

场景

参与一个前端项目,但是项目node版本低,本机的node版本过高,启动项目报错

解决方式一

更改package.json文件,解决版本过高的不兼容

"dev": "set NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --open",
"build": "set NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service build --report",

重点:在以前的基础上加上set NODE_OPTIONS=--openssl-legacy-provider

解释:

设置 NODE_OPTIONS=--openssl-legacy-provider 是为了解决Node.js 18+ 版本中因OpenSSL 3.0 不支持MD4算法导致的构建错误(如 digital envelope routines:unsupported)(来源于AI,有的说17版本就有这个问题,当版本高时,就尝试下)

解决方式二

使用nvm安装低版本的nodejs

# 查看node.js最新的一批版本(版本号:偶数是绝对稳定版本 基数是不一定稳定版本)
nvm list available
# 安装指定的版本
nvm install 10.23.0
# 查看安装的所有版本
nvm list
nvm ls
# 进入或切换版本
nvm use 18.15.0
# 测试
node -v
npm -v

node&nvm(cnpm、yarn)下载安装配置

nvm不能下载安装低版本node解决办法

解决方式三

卸载原版本node,安装适配版本

参考

node&nvm(cnpm、yarn)下载安装配置

的node原生安装部分

但是不建议,多个项目,多个版本,就太恶心了(可以实现一个切换脚本,来更改node版本,有时间可以实现下)

解决方式四

修改package.json文件中的node依赖版本号

如果不想使用nvm安装低版本nodejs,也可以手动修改vue项目中package.json文件中的node依赖版本号。以下是具体的操作步骤:

打开终端或命令行窗口,进入vue项目的根目录。

使用以下命令进入package.json文件所在的目录:

cd package.json所在目录  # 以package.json位于项目根目录为例

使用以下命令修改node依赖版本号:

npm uninstall node  # 卸载当前版本的node依赖包
npm install node@10.24.1 --save-dev  # 安装指定版本的node依赖包,并将其添加到devDependencies中(非生产环境依赖)

确认node依赖版本号已经修改成功,在使用以下命令查看当前版本号:

node -v

选择

  • 快速解决选择一,推荐
  • 有nvm经验选择二,推荐
  • 四没尝试过,也还算便捷
  • 三不推荐(有脚本,可以使用,会比较方便)

参考文献

https://www.cnblogs.com/licin/p/17987880
https://www.cnblogs.com/shui-notes/p/18637938
https://juejin.cn/post/7435637774853193754
posted @ 2025-12-14 21:08  不要划水  阅读(3)  评论(0)    收藏  举报