Transformer构建失败:error:0308010C数字信封例程不支持求助
解决Node构建时ERR_OSSL_EVP_UNSUPPORTED错误
这个错误源于Node.js v17及以上版本默认启用OpenSSL 3.0严格算法校验,导致旧哈希算法不兼容,以下是有效解决方案:
临时兼容旧算法
在项目启动/构建命令前添加环境变量,强制使用旧版OpenSSL算法:NODE_OPTIONS=--openssl-legacy-provider以React Native项目为例,修改
package.json中的脚本:"scripts": { "start": "NODE_OPTIONS=--openssl-legacy-provider react-native start", "build": "NODE_OPTIONS=--openssl-legacy-provider react-native run-android" }确保Node版本降级生效
若已尝试降级到v14,需确认版本切换成功:- 用nvm管理版本的话,执行
nvm use 14,再通过node -v检查当前版本是否为v14.x.x - 清除旧依赖和缓存后重新安装:
rm -rf node_modules && npm cache clean --force && npm install
- 用nvm管理版本的话,执行
升级相关依赖
metro系列依赖(metro-cache、metro-transform-worker)可能存在版本兼容问题,更新到最新版:npm update metro metro-cache metro-transform-worker
内容的提问来源于stack exchange,提问作者Kiran
相关产品推荐
相关产品推荐

