找不到模块 'webpack' - BigCommerce

Cannot find module 'webpack' - BigCommerce

需要在本地 运行 一个 BigCommerce 站点,但不确定为什么它没有 运行ning。 运行正在使用旧版本的 Cornerstone (V4.4.0),因此不确定如何修复:

节点版本:V12.22.7

NPM:6.14.15

Stencil 版本 - 3.7.0

错误:

Error: Cannot find module 'webpack'
Require stack:

at Function.Module._resolveFilename (internal/modules/cjs/loader.js:815:15)
at Function.Module._load (internal/modules/cjs/loader.js:667:27)
at Module.require (internal/modules/cjs/loader.js:887:19)
at require (internal/modules/cjs/helps.js:74:18)
at Object. (path-to-directory/stencil.conf.js:1:15)

还有这个:

npm ERR! Error while executing:
npm ERR! /usr/bin/git ls-remote -h -t git://github.com/bigcommerce-labs/node-sass.git
npm ERR!
npm ERR! fatal: remote error:
npm ERR! The unauthenticated git protocol on port 9418 is no longer supported.
npm ERR! Please see https://github.blog/2021-09-01-improving-git-protocol-security-github/ for more information.
npm ERR!
npm ERR! exited with error code: 128

我已尝试退回 Node 版本,但错误仍然存​​在。检查了 API 密钥以防它需要更新而不是问题所在。

检查您的 package.json 是否有任何指向 git://github.com url 的依赖项。这些现在已弃用,您必须使用 https,例如 git+https://github.com/bigcommerce-labs/node-sass.git.

我 运行 昨天遇到了同样的问题,我相信答案与 link 中概述的安全协议的最新更新有关,link 在 运行宁npm i。我认为发生的事情是您的远程 git 用户设置以 git:// 为前缀,这不再有效,必须以 https:// 为前缀。如果您 运行 在您的终端中执行以下命令,它应该会全局调整您的所有存储库,您应该不会再有问题了:

git config --global url."https://".insteadOf git://

现在,再次尝试 运行ning npm i,您应该可以开始了。 我在 https://github.com/heroku/heroku-buildpack-nodejs/issues/959

寻求解决同一问题时找到了这个解决方案