当我运行“npm run prod”命令时,终端显示“错误:03000086:数字信封例程::初始化错误”

8ljdwjyq  于 2022-12-04  发布在  其他
关注(0)|答案(1)|浏览(1227)

我有一个vue + laravel应用程序。我需要使用以下命令运行生产命令:

npm run prod

但我收到了以下错误消息:

opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
  library: 'digital envelope routines',
  reason: 'unsupported',
  code: 'ERR_OSSL_EVP_UNSUPPORTED'
}

Node.js v17.9.1

我在谷歌上搜索并将此添加到package.jsonscripts键:

"serve": "vue-cli-service --openssl-legacy-provider serve",
"build": "vue-cli-service --openssl-legacy-provider build",
"lint": "vue-cli-service --openssl-legacy-provider lint"

但还是没有解决办法。你能告诉我怎么修吗?
我的完整package.json文件:https://codeshare.io/3AXbBg

hjzp0vay

hjzp0vay1#

此错误消息表明您的应用程序正在使用的OpenSSL库存在问题。此库负责加密和解密数据,因此您的应用程序可能由于此错误而无法正确加密或解密数据。
一个可能的解决方案是在运行npm run命令时尝试使用--openssl-legacy-provider标志。此标志告诉应用程序使用旧版本的OpenSSL库,该库可能没有相同的兼容性问题。
您可以尝试运行以下命令:
npm run --openssl-legacy-provider prod
如果这不能解决问题,您可能需要尝试将OpenSSL库更新到最新版本。您可以通过运行以下命令来执行此操作:
npm install openssl
这将安装最新版本的OpenSSL库,该库可能能够修复此问题。如果问题仍然存在,您可能需要尝试联系应用程序的维护人员以获得帮助。

相关问题