Mar*_*ear 8 ruby-on-rails heroku
我有一个 Rails 7.x 应用程序,我试图推送到 heroku 并收到此错误:
remote: Running: rake assets:precompile
remote: Compiling...
remote: Compilation failed:
remote: node:internal/crypto/hash:71
remote: this[kHandle] = new _Hash(algorithm, xofLen);
remote: ^
remote:
remote: Error: error:0308010C:digital envelope routines::unsupported
remote: at new Hash (node:internal/crypto/hash:71:19)
remote: at Object.createHash (node:crypto:133:10)
remote: at module.exports (/tmp/build_b1f32be4/node_modules/webpack/lib/util/createHash.js:135:53)
remote: at NormalModule._initBuildHash (/tmp/build_b1f32be4/node_modules/webpack/lib/NormalModule.js:417:16)
remote: at handleParseError (/tmp/build_b1f32be4/node_modules/webpack/lib/NormalModule.js:471:10)
remote: at /tmp/build_b1f32be4/node_modules/webpack/lib/NormalModule.js:503:5
remote: at /tmp/build_b1f32be4/node_modules/webpack/lib/NormalModule.js:358:12
remote: at /tmp/build_b1f32be4/node_modules/loader-runner/lib/LoaderRunner.js:373:3
remote: at iterateNormalLoaders (/tmp/build_b1f32be4/node_modules/loader-runner/lib/LoaderRunner.js:214:10)
remote: at iterateNormalLoaders (/tmp/build_b1f32be4/node_modules/loader-runner/lib/LoaderRunner.js:221:10)
remote: at /tmp/build_b1f32be4/node_modules/loader-runner/lib/LoaderRunner.js:236:3
remote: at context.callback (/tmp/build_b1f32be4/node_modules/loader-runner/lib/LoaderRunner.js:111:13)
remote: at /tmp/build_b1f32be4/node_modules/babel-loader/lib/index.js:44:71 {
remote: opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
remote: library: 'digital envelope routines',
remote: reason: 'unsupported',
remote: code: 'ERR_OSSL_EVP_UNSUPPORTED'
remote: }
remote:
remote: Node.js v18.12.1
remote:
remote:
remote: !
remote: ! Precompiling assets failed.
remote: !
remote: ! Push rejected, failed to compile Ruby app.
remote:
remote: ! Push failed
Run Code Online (Sandbox Code Playgroud)
我本地的节点版本是v18.12.1. 我还看到了一些可能与 openssl 有关的问题。我的本地 openssl 版本是OpenSSL 3.0.7 1 Nov 2022 (Library: OpenSSL 3.0.7 1 Nov 2022).
任何帮助表示赞赏!
我尝试了很多方法来尝试解决这个问题,但我认为最终所做的是添加
"engines": {
"node": "16.18.1"
}
Run Code Online (Sandbox Code Playgroud)
...到我的 package.json 文件。另外,我认为正确的方法是继续在本地安装相同版本的节点并重新运行,yarn install以便您的yarn.lock文件对于该版本是正确的。
希望这对某人有帮助!
| 归档时间: |
|
| 查看次数: |
2575 次 |
| 最近记录: |