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