赞
踩
今天因为开发公司某个Taro项目,需要把node从v14切到v18.16.0的版本,回头编译Taro的项目,发现跑不起来;
node版本:v18.16.0
taro版本:v3.5.5
原因是 node.js v17 版本中发布的 OpenSSl 对允许算法和密钥大小增加了严格的限制,可能会对生态系统造成影响,所以当node版本超过v17,会出现上图问题;
解决办法(mac):
export NODE_OPTIONS=–openssl-legacy-provider
这个命令是设置 Node.js 运行时的环境变量,用于指定使用 OpenSSL 的传统提供程序,而不是默认的安全提供程序。这个命令的作用是为了解决在使用 Node.js 运行一些旧的代码时可能出现的 SSL/TLS 相关问题。
如果你运行的代码没有 SSL/TLS 相关的问题,或者你正在使用最新的 Node.js 版本,那么你可能不需要设置这个环境变量。但是,如果你的代码出现了 SSL/TLS 相关的问题,或者你正在使用较旧的 Node.js 版本,那么你可以尝试设置这个环境变量来解决问题。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。