我遇到了一个 Webpack 构建过程突然中断的问题,导致以下错误......
\n<s> [webpack.Progress] 10% building 0/1 entries 0/0 dependencies 0/0 modules\nnode:internal/crypto/hash:67\n this[kHandle] = new _Hash(algorithm, xofLen);\n ^\n\nError: error:0308010C:digital envelope routines::unsupported\n at new Hash (node:internal/crypto/hash:67:19)\n at Object.createHash (node:crypto:130:10)\n at BulkUpdateDecorator.hashFactory (/app/node_modules/webpack/lib/util/createHash.js:155:18)\n at BulkUpdateDecorator.update (/app/node_modules/webpack/lib/util/createHash.js:46:50)\n at OriginalSource.updateHash (/app/node_modules/webpack-sources/lib/OriginalSource.js:131:8)\n at NormalModule._initBuildHash (/app/node_modules/webpack/lib/NormalModule.js:888:17)\n at handleParseResult (/app/node_modules/webpack/lib/NormalModule.js:954:10)\n at /app/node_modules/webpack/lib/NormalModule.js:1048:4\n at processResult (/app/node_modules/webpack/lib/NormalModule.js:763:11)\n at /app/node_modules/webpack/lib/NormalModule.js:827:5 {\n opensslErrorStack: [ \'error:03000086:digital envelope routines::initialization error\' ],\n library: \'digital envelope routines\',\n reason: \'unsupported\',\n code: \'ERR_OSSL_EVP_UNSUPPORTED\'\n}\ncommand terminated with exit code 1\nRun Code Online (Sandbox Code Playgroud)\n我尝试过谷歌搜索ERR_OSSL_EVP_UNSUPPORTED webpack,几乎没有产生任何有用的结果,但它确实突出了使用OpenSSL提供的 …
我正在建立一个盖茨比网站。我将 Node.js 升级到v17.0.1,当我运行构建时,出现错误:
Error: digital envelope routines::unsupported
opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
library: 'digital envelope routines',
reason: 'unsupported',
code: 'ERR_OSSL_EVP_UNSUPPORTED'
Run Code Online (Sandbox Code Playgroud)
如果我将其降级到 v16,它可以正常工作,并且构建将会成功。我怎样才能解决这个问题?
从谷歌搜索,这可能是一个类似的问题: 错误:错误:06065064:数字信封例程:EVP_DecryptFinal_ex:解密错误#48
这是一个 React 网络应用程序。当我跑步时
npm start
Run Code Online (Sandbox Code Playgroud)
出现此错误
> dataflow@0.1.0 start
> react-scripts start
node:internal/modules/cjs/loader:488
throw e;
^
Error [ERR_PACKAGE_PATH_NOT_EXPORTED]: Package subpath './lib/tokenize' is not defined by "exports" in /Users/juliantc/Desktop/ai-studio/development/frontend/node_modules/postcss-safe-parser/node_modules/postcss/package.json
at new NodeError (node:internal/errors:371:5)
at throwExportsNotFound (node:internal/modules/esm/resolve:416:9)
at packageExportsResolve (node:internal/modules/esm/resolve:669:3)
at resolveExports (node:internal/modules/cjs/loader:482:36)
at Function.Module._findPath (node:internal/modules/cjs/loader:522:31)
at Function.Module._resolveFilename (node:internal/modules/cjs/loader:919:27)
at Function.Module._load (node:internal/modules/cjs/loader:778:27)
at Module.require (node:internal/modules/cjs/loader:999:19)
at require (node:internal/modules/cjs/helpers:102:18)
at Object.<anonymous> (/Users/juliantc/Desktop/ai- studio/development/frontend/node_modules/postcss-safe-parser/lib/safe-parser.js:1:17) {
code: 'ERR_PACKAGE_PATH_NOT_EXPORTED'
}
Node.js v17.0.1
Run Code Online (Sandbox Code Playgroud)
仅当我在这台特定计算机上运行此错误时才会发生此错误,而我没有超级用户访问权限。它适用于其他计算机。
作为参考,这是 ./node_modules/postcss-safe-parser/node_modules/postcss/package.json
npm start
Run Code Online (Sandbox Code Playgroud)
这就是我在 ./node_modules/postcss-safe-parser/node_modules/postcss/lib/ 中列出文件时得到的结果
lgtd-lt-119-mbmt:前端 juliantc$ ls ./node_modules/postcss-safe-parser/node_modules/postcss/lib/
at-rule.d.ts css-syntax-error.d.ts …Run Code Online (Sandbox Code Playgroud) sudo apt upgrade在Ubuntu\xc2\xa020.04 (Focal Fossa)上更新后出现此问题。
之前我使用的是 Node.js v18.0.0 和 npm 8.7.0 版本,但是更新后出现了问题。我运行了命令nvm install node --reinstall-packages-from=node,但没有帮助。
现在我使用 npm v8.12.1 和 Node.js v18.4.0。
\n运行命令时npm start,我收到消息:
> mini-app@0.0.0 start\n> cross-env PORT=10888 HTTPS=false react-scripts start --openssl-legacy-provider\n\nnode: --openssl-legacy-provider is not allowed in NODE_OPTIONS\nRun Code Online (Sandbox Code Playgroud)\n文件package.json的一部分如下所示:
\n "scripts": {\n "start": "cross-env PORT=10888 HTTPS=false react-scripts start --openssl-legacy-provider",\n "build": "react-scripts build",\n "predeploy": "npm run build",\n "deploy": "vk-miniapps-deploy",\n "tunnel": "vk-tunnel --insecure=1 --http-protocol=https --ws-protocol=wss --host=localhost --port=10888"\n },\nRun Code Online (Sandbox Code Playgroud)\n … 我在学习 Next.js 时遇到此错误,npx create-next-app根据此处的站点文档使用命令https://nextjs.org/docs/api-reference/create-next-app。一切正常,直到我启动服务器,
错误堆栈:
$ npm run dev
> devto-clone@0.1.0 dev
> next dev
ready - started server on 0.0.0.0:3000, url: http://localhost:3000
info - Using webpack 5. Reason: Enabled by default https://nextjs.org/docs/messages/webpack5
Error: error:0308010C:digital envelope routines::unsupported
at new Hash (node:internal/crypto/hash:67:19)
at Object.createHash (node:crypto:130:10)
at BulkUpdateDecorator.hashFactory (C:\xampp\htdocs\devto-clone\node_modules\next\dist\compiled\webpack\bundle5.js:138971:18)
at BulkUpdateDecorator.update (C:\xampp\htdocs\devto-clone\node_modules\next\dist\compiled\webpack\bundle5.js:138872:50)
at OriginalSource.updateHash (C:\xampp\htdocs\devto-clone\node_modules\next\dist\compiled\webpack-sources3\index.js:1:10264)
at NormalModule._initBuildHash (C:\xampp\htdocs\devto-clone\node_modules\next\dist\compiled\webpack\bundle5.js:68468:17)
at handleParseResult (C:\xampp\htdocs\devto-clone\node_modules\next\dist\compiled\webpack\bundle5.js:68534:10)
at C:\xampp\htdocs\devto-clone\node_modules\next\dist\compiled\webpack\bundle5.js:68628:4
at processResult (C:\xampp\htdocs\devto-clone\node_modules\next\dist\compiled\webpack\bundle5.js:68343:11)
at C:\xampp\htdocs\devto-clone\node_modules\next\dist\compiled\webpack\bundle5.js:68407:5
Error: error:0308010C:digital envelope routines::unsupported
at new Hash (node:internal/crypto/hash:67:19)
at Object.createHash …Run Code Online (Sandbox Code Playgroud) opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
library: 'digital envelope routines',
reason: 'unsupported',
code: 'ERR_OSSL_EVP_UNSUPPORTED'
}
Run Code Online (Sandbox Code Playgroud)
当我切换到节点 v18 时出现此错误
我正在使用 Tailwind 构建一个简单的 React 应用程序。我用过create-react-app然后安装了tailwind。我以前已经做过很多次了。
为了安装 Tailwind,我还必须安装craco并更改package.json “scripts” 以使用craco,如下所示:
"scripts": {
"start": "craco start",
"build": "craco build",
"test": "craco test",
"eject": "react-scripts eject"
}
Run Code Online (Sandbox Code Playgroud)
然而,这一次,当我运行时npm start,我遇到了一个以前从未遇到过的错误:
Error: error:0308010C:digital envelope routines::unsupported
所以我在StackOverflow上搜索,有人建议添加--openssl-legacy-provider到我的“开始”脚本中,如下所示:
"scripts": {
"start": "craco --openssl-legacy-provider start",
"build": "craco build",
"test": "craco test",
"eject": "react-scripts eject"
}
Run Code Online (Sandbox Code Playgroud)
现在正在发挥作用。但有人可以向我解释一下它--openssl-legacy-provider到底是什么以及它是如何工作的吗?
构建我的 React docker 映像后,我尝试运行docker run image_name
,之后日志抛出此错误
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 (/app/node_modules/webpack/lib/util/createHash.js:135:53)
at NormalModule._initBuildHash (/app/node_modules/webpack/lib/NormalModule.js:417:16)
at /app/node_modules/webpack/lib/NormalModule.js:452:10
at /app/node_modules/webpack/lib/NormalModule.js:323:13
at /app/node_modules/loader-runner/lib/LoaderRunner.js:367:11
at /app/node_modules/loader-runner/lib/LoaderRunner.js:233:18
at context.callback (/app/node_modules/loader-runner/lib/LoaderRunner.js:111:13)
at /app/node_modules/babel-loader/lib/index.js:59:103 {
opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
library: 'digital envelope routines',
reason: 'unsupported',
code: 'ERR_OSSL_EVP_UNSUPPORTED'
}
Run Code Online (Sandbox Code Playgroud)
我的docker文件如下
FROM node:18-alpine
EXPOSE 3000
WORKDIR /app
COPY ./frontend/package.json .
RUN npm install
COPY ./frontend .
COPY ./images .
CMD ["npm", "start"]
Run Code Online (Sandbox Code Playgroud)
我预计这可能是节点版本问题,但我不太确定该错误,有人能解释一下这个错误是什么以及我该如何解决吗?谢谢
我的 NuxtJS 应用程序需要帮助。
最近,在我离开应用程序一段时间(2 个月)而没有更新后,应用程序中出现了 ESLint 冲突。因此,在我开始研究它之后,尝试解决 ESLint 问题提出了挑战。然后我必须将项目迁移到较新版本的 Node 和 ESLint。
这样做之后,我解决了冲突问题,我的项目可以安装我的依赖项,但现在服务器无法启动。节点现在抛出一个错误,我什至不知道如何修复。我不知道许多其他人在升级 Node.js 版本后是否面临这个问题,但它抛出了有关不支持的哈希函数的错误。
这是阻止我的服务器启动的终端错误的屏幕截图:
我已经解决了迁移带来的所有 ESLint 和语法错误,所以我不知道还能做什么。
下面是我的 nuxt.config.js 文件的片段:
export default {
// Global page headers: https://go.nuxtjs.dev/config-head
head: {
title: 'heritage-fd',
meta: [
{ charset: 'utf-8' },
{ name: 'viewport', content: 'width=device-width, initial-scale=1' },
{ hid: 'description', name: 'description', content: '' },
{ name: 'format-detection', content: 'telephone=no' }
],
link: [
{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }
],
script: [
{
src: '~/static/css/bootstrap.min.js',
},
], …Run Code Online (Sandbox Code Playgroud) 我想将我的节点版本从最新版本降级到V6.10.3 ..
但迄今为止没有任何工作.尝试NVM,并且通过说找不到make命令也会出错.如何降级Node?