如何解决npm run serve运行vue项目时,出现报错:Error: error:0308010C:digital envelope routines::unsupported

这篇具有很好参考价值的文章主要介绍了如何解决npm run serve运行vue项目时,出现报错:Error: error:0308010C:digital envelope routines::unsupported。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

❓ 问题描述

用npm run serve运行vue项目时,出现报错:Error: error:0308010C:digital envelope routines::unsupported

❌ 报错信息

前端项目启动(npm run dev)和打包时(npm run build:prod)报出如下错误,

Error: error:0308010C:digital envelope routines::unsupported
    at new Hash (node:internal/crypto/hash:71:19)
    at Object.createHash (node:crypto:133:10)
    at module.exports 
....
 
at FSReqCallback.readFileAfterClose [as oncomplete] (node:internal/fs/read_file_context:68:3) {
  opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
  library: 'digital envelope routines',
  reason: 'unsupported',
  code: 'ERR_OSSL_EVP_UNSUPPORTED'
}

如何解决npm run serve运行vue项目时,出现报错:Error: error:0308010C:digital envelope routines::unsupported

⁉️ 问题原因:

经过一番探索,终于找到了症结所在:主要是nodeJs V17版本发布了OpenSSL3.0对算法和秘钥大小增加了更为严格的限制,nodeJs v17之前版本没影响,但V17和之后版本会出现这个错误。

一句话总结,说白了就是npm升级导致与 openssl 不兼容导致的初始化失败,也就是node.js版本过高的原因造成的运行失败。

🎈 解决办法(仅windows):

◼️ 方式一:通过更改环境变量,进行控制

1、在package.json的scripts中新增SET NODE_OPTIONS=--openssl-legacy-provider

添加前:

"scripts": {
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint"
},

添加后

 "scripts": {
    "serve": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint"
},

注意:如果团队中node版本不一致,不要将该package.json提交。

2、与第一种方法类似,在编辑器集成终端里,直接设置环境变量,进行控制(只能临时解决)

找到package.json文件右键,在集成终端中打开后,直接输入set NODE_OPTIONS=--openssl-legacy-provider  $env:NODE_OPTIONS="--openssl-legacy-provider"回车,然后npm run serve重新运行项目即可。

// windows下
set NODE_OPTIONS=--openssl-legacy-provider
// linux下
export NODE_OPTIONS=--openssl-legacy-provider

◼️ 方式二:更换node.js版本

如何解决npm run serve运行vue项目时,出现报错:Error: error:0308010C:digital envelope routines::unsupported文章来源地址https://www.toymoban.com/news/detail-425297.html

到了这里,关于如何解决npm run serve运行vue项目时,出现报错:Error: error:0308010C:digital envelope routines::unsupported的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • vue项目启动npm install和npm run serve时出现错误Failed to resolve loader:node-sass

    vue项目启动npm install和npm run serve时出现错误Failed to resolve loader:node-sass

    解决方法: 解决方法: node sass-node loader-sass 14.16.0 4.14.1 8.0.2

    2024年04月26日
    浏览(14)
  • npm run serve启动报错npm ERR! Missing script: “serve“

    npm run serve启动报错npm ERR! Missing script: “serve“

    启动项目的时候用npm run serve发现报了以下的错误 1. 一般情况下,这个问题是因为 package.json文件里面确实没有 这里没有可能因为你的脚手架版本比较低,如果不想换,可以用 这里面有的 npm run dev去启动也是可以的 npm run serve和npm run dev区别: 前者是vue-cli3.0版本,后者是vue-

    2024年02月22日
    浏览(18)
  • npm run serve出现错误 error:0308010C:digital envelope routines::unsupported

    因为新换了电脑,重新安装vs code和 nodejs 跑前端项目,npm run install之后,vs code命令行出现错误:error: error:0308010C:digital envelope routines::unsupported 10% building 2/4 modules 2 active ...node_moduleswebpackhotdev-server.js E rror: error:0308010C:digital envelope routines::unsupported     at new Hash (node:internal/c

    2024年02月16日
    浏览(17)
  • 【npm run serve报错问题node.js版本太高】

    提示:这里描述项目中遇到的问题: npm run serve出现下面的报错问题 提示:这里填写该问题的具体解决方案: 1、方法一: 在命令行修改环境变量: $env:NODE_OPTIONS=\\\"--openssl-legacy-provider\\\" 在启动项目: yarn start 2、方法二: 使用nvm将node修改为不高于16的版本

    2024年01月18日
    浏览(29)
  • vue执行配置选项npm run serve的本质

    vue执行配置选项npm run serve的本质

    目录 vue执行配置选项npm run serve运行开发服务器的本质 一、启动开发服务器、调用“工具链”、编译、并运行当前工程 二、npm run serve内部原理分析 三、vue编译运行过程 喜欢的,就收藏并点个赞,便于观看下篇文章: npm run serve         该命令的配置文件在当前工程的pack

    2024年01月21日
    浏览(12)
  • 解决启动vue前端报错:npm ERR! Missing script: “serve“

    目录 一、遇到问题 二、出现报错的两个原因  三、解决办法  npm ERR! Missing script: \\\"serve\\\" npm ERR!  npm ERR! To see a list of scripts, run: n

    2024年02月09日
    浏览(19)
  • node、npm版本升级,同时解决升级后vue项目运行报错

    1、首先,需要确定当前安装的Node.js的版本。可以通过在命令行中运行以下命令来查看: 2、如果当前版本较旧,可以考虑升级到最新版本。可以访问Node.js官方网站(https://nodejs.org/)下载最新的Node.js安装包。 不想下载最新的版本,也可以查看历史版本进行下载 3、在安装完成

    2024年02月10日
    浏览(11)
  • vue启动配置npm run serve,动态环境变量,根据不同环境访问不同域名

    vue启动配置npm run serve,动态环境变量,根据不同环境访问不同域名

    首先创建不同环境的配置文件,比如域名和一些常量,创建一个env文件,先看看文件目录 env.dev就是dev环境的域名,.test就是test环境域名,其他同理,然后配置package.json文件 scripts里面就是我们的运行配置,当我们执行npm run dev的时候就会读取env.dev文件里面的配置,其他同理,

    2024年02月12日
    浏览(16)
  • vue项目 ‘npm run dev‘ 报错 npm ERR! errno 134

    vue项目 ‘npm run dev‘ 报错 npm ERR! errno 134

    npm ERR! errno 134 表示 npm 执行出现了致命错误,通常是由于内存不足或程序崩溃导致的。 这时需要我们分配更多的内存给 vue-cli-service serve npm install increase-memory-limit cross-env increase-memory-limit 用于增加脚本的内存限制。脚本在执行过程中可能会消耗大量的内存,当内存被耗尽时会

    2024年02月11日
    浏览(15)
  • yarn run serve报错Error: Cannot find module ‘@vue/cli-plugin-babel‘ 的解决办法

    yarn run serve报错Error: Cannot find module ‘@vue/cli-plugin-babel‘ 的解决办法

    关于这个问题,是在构建前端工程的时候遇到的,项目构建完成后,“yarn run serve”启动项目时,出现的问题:“  Error: Cannot find module ‘@vue/cli-plugin-babel‘  ” 如下图: 具体信息如下: 根据错误信息提示,在本地环境中没有找到组件“ @vue/cli-plugin-babel ” , 直接在本地安装

    2024年01月22日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包