【Electron+Vue】Error: error:0308010C:digital envelope routines::unsupported

问题描述

使用 electron-builder 构建 vue 项目,运行 npm run electron:build ,构建过程报错。

bash 复制代码
/  Bundling main process...

ERROR  Failed to compile with 1 errors                                                                                                                  16:08:17

 error 

background.js from Terser
Error: error:0308010C:digital envelope routines::unsupported
    at new Hash (node:internal/crypto/hash:69:19)
    at Object.createHash (node:crypto:133:10)

原因分析

在使用 electron-builder 构建项目时,使用的 Node.js 版本过高,不支持当前的 OpenSSL 版本,导致构建失败。

解决这个问题的方法是在构建命令前设置 NODE_OPTIONS 环境变量,强制使用 OpenSSL 的旧版提供程序。


解决方案

打开package.json,找到

javascript 复制代码
  "scripts": {
    "electron:build": "vue-cli-service electron:build",
  },

改为

javascript 复制代码
  "scripts": {
    "electron:build": "set NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service electron:build",
  },
相关推荐
SHIPKING39333 分钟前
【HTML】个人博客页面
javascript·css·html
Stella25212 小时前
【Vue】CSS3实现关键帧动画
前端·vue.js·css3
junjun.chen06062 小时前
【在qiankun模式下el-dropdown点击,浏览器报Failed to execute ‘getComputedStyle‘ on ‘Window‘: parameter 1 is not o
前端·javascript·前端框架
課代表2 小时前
AcroForm JavaScript Promise 对象应用示例: 异步加载PDF文件
开发语言·javascript·pdf·promise·对象
素雪风华2 小时前
构建RAG混合开发---PythonAI+JavaEE+Vue.js前端的实践
java·vue.js·python·ai·语言模型·llms·qwen千问大模型
zm2 小时前
服务器连接多客户端
java·javascript·算法
小屁孩大帅-杨一凡3 小时前
一个简单点的js的h5页面实现地铁快跑的小游戏
开发语言·前端·javascript·css·html
purpleseashell_Lili4 小时前
配置别名路径 @
javascript·react
这个一个非常哈5 小时前
VUE篇之自定义组件使用v-model
前端·javascript·vue.js
热爱前端的小君同学5 小时前
长按拖拽移动的vue3组件
前端·javascript·vue.js