ToB企服应用市场:ToB评测及商务社交产业平台

标题: node版本过高导致vue-cli项目无法运行(Error: error:0308010C:digital enve [打印本页]

作者: 反转基因福娃    时间: 2025-1-4 02:45
标题: node版本过高导致vue-cli项目无法运行(Error: error:0308010C:digital enve
目录
解决方案一:
解决方案二:
解决方案三(推荐):
1、nvm下载
2、安装nvm
3、配置路径和下载镜像
4、检查nvm是否安装成功
5.使用nvm安装node版本
6.安装步骤
6.1安装指定版本
6.2下载多个node版本
6.3切换版本
6.4删除某个node版本


控制台报错信息:
  1. Error: error:0308010C:digital envelope routines::unsupported
  2.     at new Hash (node:internal/crypto/hash:71:19)
  3.     at Object.createHash (node:crypto:133:10)
  4.     at module.exports (D:\project\cylink-ui\node_modules\webpack\lib\util\createHash.js:135:53)
  5.     at D:\project\cylink-ui\node_modules\graceful-fs\graceful-fs.js:123:16
  6.     at FSReqCallback.readFileAfterClose [as oncomplete] (node:internal/fs/read_file_context:68:3) {
  7.   opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
  8.   library: 'digital envelope routines',
  9.   reason: 'unsupported',
  10.   code: 'ERR_OSSL_EVP_UNSUPPORTED'
  11. }
  12. Node.js v20.13.0
复制代码
由于node版本过高,导致vue-cli项目运行报错。报错信息如下:

解决方案一:

在每次项目启动前,输入配置指令:
  1. set NODE_OPTIONS=--openssl-legacy-provider
复制代码

解决方案二:

修改package.json文件:
修改前:

修改后:

修改内容:
  1. "dev": "set NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --open",
  2. "build:prod": "set NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service build --report",
  3. "build:stage": "set NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service build --mode staging",
  4. "preview": "set NODE_OPTIONS=--openssl-legacy-provider && node build/index.js --preview",
复制代码
在方案二中也可以只修改dev那一行代码,亲测也是成功的:
代码如下:
  1. "dev": "set NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve",
复制代码
解决方案三(推荐):

使用nvm来管理node版本,需要先把之前下载的node删除干净,把相关的文件夹也要删除
   nvm(node.js version management),是一个nodejs的版本管理工具。nvm和n都是node.js版本管理工具,为相识决node.js 各种版本存在不兼容征象 可以通过它可以安装和切换不同版本的node.js。【可同时在一个情况中安装多个node.js版本(和配套的npm)】
  1、nvm下载

官网下载nvm包:Releases · coreybutler/nvm-windows

2、安装nvm


上面nvm和nodejs默认安装地址都是C盘,最好换成其他的盘,并且注意安装路径的文件夹名称不要出现中文,空格等,否则后期npm使用的时间会出现符号格式不正确题目。
更改后点击下一步即可
3、配置路径和下载镜像

下载源:(第一个是node下载镜像,第二个是npm下载镜像)
  1. node_mirror: https://npmmirror.com/mirrors/node/
  2. npm_mirror: https://npmmirror.com/mirrors/npm/
复制代码
找到nvm安装的路径中的setting文件,新增下面两行信息,配置下载源

双击进去即可:
在下面把下载源复制进去:

然后保存退出即可
4、检查nvm是否安装成功

win+R调出终端,输入nvm,出现下面的就已经安装成功了

5.使用nvm安装node版本

也是cmd调出终端,起首使用nvm list available查询可插入的版本号,LST代表可插入稳定版本,如果没有指定版本,发起使用LTS下的版本

6.安装步骤

6.1安装指定版本

  1. nvm install 16.13.0
复制代码
现在而言发起不要安装太高的版本,很多老的项目使用的node版本还是很低的,这里我下载的是16.13.0的
安装完成后可以分别输入命令行 node -v 和 npm -v,检验node.js以及对应npm是否安装成功

6.2下载多个node版本

在nvm中你可以下载多个node版本,下载方式和前面就是一样的了
6.3切换版本

nvm list 查看当前已安装的node版本,带有 * 的是正在使用的版本
  1. nvm list或者nvm ls
复制代码

nvm use 切换node版本。(如果报错,用管理员身份打开重新 nvm use 你指定的版本)
  1. nvm use 16.13.0
复制代码
6.4删除某个node版本

  1. nvm uninstall node版本号  //例如:nvm uninstall 16.14.0)即可删除对应版本
复制代码


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4