WebStrom报错

目录

报错情况

报错原因

解决办法


报错情况

复制代码
Error: error:0308010C:digital envelope routines::unsupported
[1]     at new Hash (node:internal/crypto/hash:68:19)
[1]     at Object.createHash (node:crypto:138:10)
[1]     at module.exports (D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\webpack\lib\util\createHash.js:135:53)
[1]     at NormalModule._initBuildHash (D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\webpack\lib\NormalModule.js:417:16)
[1]     at handleParseError (D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\webpack\lib\NormalModule.js:471:10)
[1]     at D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\webpack\lib\NormalModule.js:503:5
[1]     at D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\webpack\lib\NormalModule.js:358:12
[1]     at D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\loader-runner\lib\LoaderRunner.js:373:3
[1]     at iterateNormalLoaders (D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\loader-runner\lib\LoaderRunner.js:214:10)
[1]     at iterateNormalLoaders (D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\loader-runner\lib\LoaderRunner.js:221:10)
[1]     at D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\loader-runner\lib\LoaderRunner.js:236:3
[1]     at runSyncOrAsync (D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\loader-runner\lib\LoaderRunner.js:130:11)
[1]     at iterateNormalLoaders (D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\loader-runner\lib\LoaderRunner.js:232:2)
[1]     at Array.<anonymous> (D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\loader-runner\lib\LoaderRunner.js:205:4)
[1]     at Storage.finished (D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:55:16)
[1]     at D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:91:9
[1] <s> [webpack.Progress] 10% building 2/5 modules 3 active D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\cache-loader\dist\cjs.js??ref--14-0!D:\WorkSpaces\WebStormS
pace\vue3-composition-admin\node_modules\babel-loader\lib\index.js!D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\ts-loader\index.js??ref--14-2!D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\eslint-loader\index.js??ref--13-0!D:\WorkSpaces\WebStormSpace\vue3-composition-admin\src\main.ts
[1] node:internal/crypto/hash:68
[1]   this[kHandle] = new _Hash(algorithm, xofLen);
[1]                   ^
[1]
[1] Error: error:0308010C:digital envelope routines::unsupported
[1]     at new Hash (node:internal/crypto/hash:68:19)
[1]     at Object.createHash (node:crypto:138:10)
[1]     at module.exports (D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\webpack\lib\util\createHash.js:135:53)
[1]     at NormalModule._initBuildHash (D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\webpack\lib\NormalModule.js:417:16)
[1]     at handleParseError (D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\webpack\lib\NormalModule.js:471:10)
[1]     at D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\webpack\lib\NormalModule.js:503:5
[1]     at D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\webpack\lib\NormalModule.js:358:12
[1]     at D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\loader-runner\lib\LoaderRunner.js:373:3
[1]     at iterateNormalLoaders (D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\loader-runner\lib\LoaderRunner.js:214:10)
[1]     at Array.<anonymous> (D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\loader-runner\lib\LoaderRunner.js:205:4)
[1]     at Storage.finished (D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:55:16)
[1]     at D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:91:9
[1]     at D:\WorkSpaces\WebStormSpace\vue3-composition-admin\node_modules\graceful-fs\graceful-fs.js:123:16
[1]     at FSReqCallback.readFileAfterClose [as oncomplete] (node:internal/fs/read/context:68:3) {
[1]   opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
[1]   library: 'digital envelope routines',
[1]   reason: 'unsupported',
[1]   code: 'ERR_OSSL_EVP_UNSUPPORTED'

报错原因

这个错误信息 通常出现在Node.js的新版本中,特别是从Node.js v17开始,因为默认启用了OpenSSL 3,它使用了新的加密提供者,而某些Node.js的依赖可能还不支持这种新的提供者。

解决办法

  1. 设置环境变量

    通过设置环境变量 NODE_OPTIONS 来指示Node.js使用旧的加密提供者。

    在Windows上,你可以通过命令行设置这个环境变量:

    bash复制代码

    |---|----------------------------------------------|
    | | set NODE_OPTIONS=--openssl-legacy-provider |

    或者在你的系统环境变量中永久添加这个设置。

    在Linux或macOS上,你可以在你的shell配置文件中(如 .bashrc.zshrc 等)添加:

    bash复制代码

    |---|-------------------------------------------------|
    | | export NODE_OPTIONS=--openssl-legacy-provider |

    然后运行 source ~/.bashrcsource ~/.zshrc 来使改动生效。

  2. 降级Node.js版本

    如果上述方法不可行或你不希望改变环境变量,你可以考虑降级Node.js到一个较旧的版本,比如Node.js v16,它可能与你当前的webpack版本和其他依赖更加兼容。

  3. 更新webpack和相关依赖

    如果你正在使用的webpack版本较旧,那么尝试更新到最新稳定版本可能有助于解决这个问题。同样的,检查并更新其他相关依赖也是一个好主意。

  4. 检查项目依赖

    查看package.json文件,确保所有的依赖都是最新的,并且彼此兼容。有时候,某个特定的依赖版本可能与当前的Node.js版本不兼容。

相关推荐
发现一只大呆瓜11 分钟前
前端性能优化:图片懒加载的三种手写方案
前端·javascript·面试
不爱吃糖的程序媛21 分钟前
Flutter 与 OpenHarmony 通信:Flutter Channel 使用指南
前端·javascript·flutter
利刃大大22 分钟前
【Vue】Element-Plus快速入门 && Form && Card && Table && Tree && Dialog && Menu
前端·javascript·vue.js·element-plus
NEXT0641 分钟前
AI 应用工程化实战:使用 LangChain.js 编排 DeepSeek 复杂工作流
前端·javascript·langchain
念风零壹1 小时前
AI 时代的前端技术:从系统编程到 JavaScript/TypeScript
前端·ai
光影少年1 小时前
react的hooks防抖和节流是怎样做的
前端·javascript·react.js
小毛驴8501 小时前
Vue 路由示例
前端·javascript·vue.js
发现一只大呆瓜2 小时前
AI流式交互:SSE与WebSocket技术选型
前端·javascript·面试
m0_719084113 小时前
React笔记张天禹
前端·笔记·react.js
Ziky学习记录3 小时前
从零到实战:React Router 学习与总结
前端·学习·react.js