bcrypt npm install error - Error: Cannot find module node-pre-gyp\bin\node-pre-gyp

bcrypt npm install error - Error: Cannot find module node-pre-gyp\bin\node-pre-gyp

我在 Windows 10(版本 10.0.17763 内部版本 17763)。我正在尝试使用 NPM 通过 Nodejs Express 服务器安装 Bcrypt。我已经更新了最新的 Nodejs 版本 (v12.16.3)。无论我安装的是最新版本的 Bcrypt 还是早期版本,我总是会遇到同样的错误:

我不确定它为什么要在目录 C:\Users\hazzaldo\Desktop\web-dev-udemy-course\ 中寻找 node-pre-gyp\bin\node-pre-gyp。那里没有这样的目录!这只是一个存放我的课程文件的文件夹。

我也不确定为什么会这样:

-Security\store-confidential-data-web-app\node_modules\.bin\' is not recognized as an internal or external command,
operable program or batch file

我在其他论坛上查找过此类错误,但没有任何解决方案对我有帮助。有些是要求安装已弃用模块的旧论坛。

https://www.npmjs.com/package/node-pre-gyp

那是一个 NPM 包,我会说安装 node-pre-gyp 然后尝试安装 bcrypt

node-gyp 是 bcrypt 的依赖项

我只是 运行 'npm install bcrypt --save' 并且成功了

或安装此 https://www.npmjs.com/package/node-gyp

好吧,经过两天的努力,尝试各种解决方案,但一无所获,我终于找到了一个 reddit post,其中有人遇到与我完全相同的问题:https://www.reddit.com/r/node/comments/gahkjl/npm_drives_me_crazy_for_months_looks_for_bin/

这是因为我在文件夹名称中使用了 & 字符。我想出于某种原因它会关闭 npm。从我的文件夹名称中删除这个字符解决了它。

注意来自 package.json 的依赖项, 单独安装软件包。

就我而言,我尝试添加 sqlite

   "dependencies": {
      "sqlite3": "^5.0.2"
   }

和 运行 npm install,这不起作用。

但是后来,删除了它,

"dependencies": {}

和运行

npm cache clean
npm install  -g node-gyp
npm install --save sqlite3

问题已解决。