找不到模块' bcrypt'

时间:2015-12-31 12:03:15

标签: node.js

我收到错误无法找到模块' bcrypt'在nodejs应用程序中

我尝试使用 npm install bcrypt 安装它,但仍然遇到问题。

Dec 30 2015 5:22:18 PM+05:30 - info: Connected to database:  
postgres://testdb:see2@$W@localhost/testdb

Dec 30 2015 5:22:18 PM+05:30 - error: Error: Cannot find module 'bcrypt'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (D:\...\server\modules\user\model
s\user.js:11:14)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)

错误讯息:

Xcode 7.2

34 个答案:

答案 0 :(得分:33)

我的解决方案是npm rebuild

答案 1 :(得分:31)

使用 npm install bcrypt 命令无法为我解决问题。

我尝试以下命令并解决了我的问题。

npm install node-gyp -g
npm install bcrypt -g

npm install bcrypt -save

答案 2 :(得分:8)

应该是npm install bcrypt --save。适合我!

并且,如果您在安装后遇到其他问题,则可以使用 npm-check 检查您的包裹。

答案 3 :(得分:7)

该解决方案非常简单,我已按照以下步骤解决了该错误/错误:

步骤1:使用以下命令卸载bcrypt软件包:

npm卸载bcrypt

第2步:,然后重新安装它:

npm安装bcrypt

答案 4 :(得分:6)

解决方案1:冗长的方法是:首先安装所有依赖项。

npm install -g Windows-build-tools, npm install -g node-gyp

然后,安装bcrypt: npm install bcrypt

解决方案2:简单的方法。无需安装依赖项。

npm安装bcryptjs

...您可能已经安装了bcrypt,但由于某种原因,似乎安装未成功。检查package.json文件。如果找不到bcrypt,则说明安装不成功。您必须重新安装。

正如每个人所解释的,由于缺乏依赖性,因此安装未成功。您可以在链接中检出所需的依赖项:https://www.npmjs.com/package/bcrypt

注意: 要使用bcrypt:    var bcrypt = require('bcrypt'); .....

使用bcryptjs。 var bcrypt = require('bcryptjs');

供参考: https://www.npmjs.com/package/bcrypt https://www.npmjs.com/package/bcryptjs

答案 5 :(得分:4)

这对我有用。

1)删除bcrypt文件夹中的任何nodemodules文件夹,由于您反复尝试,可能已创建文件夹。 (C:\Program Files\nodejs\node_modules\npm\node_modules

2)运行此代码npm install --save bcryptjs 例如 -

C:\Projects\loginapp>npm install --save bcryptjs 

答案 6 :(得分:4)

使用 bcryptjs 代替bcrypt 这对我有用

npm install bcryptjs --save

答案 7 :(得分:3)

就我而言,npm rebuild并没有解决它。我也不得不:

$ npm install -g node-gyp
$ sudo apt-get update
$ sudo apt-get install build-essential
$ npm rebuild

npm rebuild试图投放make

答案 8 :(得分:3)

在使用npm install之前,请更改package.json文件依赖项,即

"bcrypt":"0.7.6" 

"bcrypt":"*"

答案 9 :(得分:2)

似乎bcrypt在1.0.3版中已贬值,因为它容易受到环绕式错误的影响。 NPM建议安装版本2.0.0。

因此,如果要保存它,只需运行命令:

npm install bcrypt@2.0.0 --save

答案 10 :(得分:1)

如果这些示例均无效,则应尝试降级安装的Node版本:

例如,从节点版本10到版本9

npm install node@<version of node>

答案 11 :(得分:1)

  

我在 DigitalOcean 上运行 Ubuntu 16.04 (512 MB / 1 CPU,20   GB SSD)

以下对我有用:

  1. 将您的液滴扩展至1 GB RAM选项(10美元/月)

  2. 运行以下每个命令(一次一个)

    sudo npm install node-gyp -g
    sudo apt-get install python
    sudo apt-get install make
    sudo apt-get install g++
    
  3. 然后再试一次:

    npm install bcrypt --save
    
  4. 将Droplet缩放回512 MB选项

答案 12 :(得分:1)

您需要更新Linux系统中的g ++编译器版本。 要更新编译器,只需运行以下命令:

sudo add-apt-repository ppa:ubuntu-toolchain-r/test

sudo apt-get update

sudo apt-get install gcc-4.9 g++-4.9

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 60 --slave /usr/bin/g++ g++ /usr/bin/g++-4.9


npm install bcrypt --save

答案 13 :(得分:0)

我在bcrypt@3.0.6环境中使用@types/bcrypt@3.0.0node 13.7.0。我遇到了错误cannot find binding .../node_modules/../bindings/bcrypt_lib.node

我运行此命令来解决问题:

  • npm i -g node-gyp
  • npm i bcrypt --save

此升级为bcrypt@3.0.8

答案 14 :(得分:0)

你必须先卸载 bcrypt,因为 npm 已经安装了一些。

这发生在我身上,因为我正在从 github 安装一个包,该包有一个旧版本的 bcrypt 作为依赖项。我刚刚卸载了旧的 bcrypt 版本并安装了最新版本:

npm uninstall bcrypt
npm install bcrypt

然后,瞧。成功了。

答案 15 :(得分:0)

什么对我有用:

  • 已删除的 node_modules
  • 删除 package-lock.json
  • 重新安装所有依赖项

答案 16 :(得分:0)

就我而言,在运行安装命令和其他人建议的命令后,我的 :show 文件没有更新。我手动将此依赖项包含在我的 package.json 文件中,如下所示:

package.json

然后 "dependencies": { ... "bcrypt": "5.0.1" ... } 文件并运行 saved,这安装了丢失的包。

答案 17 :(得分:0)

对我来说,这是因为 bcryptjs 的名字不同。

简单来说,

  • cd node_modules 转到应用程序上的 node_modules 文件夹
  • ln -s bcryptjs bcrypt 或 Windows mklink /D bcryptjs bcrypt

这会创建一个 bcryptjs 目录到 bcrypt 的链接。

答案 18 :(得分:0)

来自:Cannot find module 'bcrypt'

根据节点版本使用bcrypt版本。

尝试像这样单独安装bcrypt npm软件包 如果您的节点版本为8,请使用以下命令行

npm install bcrypt@1 --save

如果您的节点版本为10,11,请使用此命令行

npm install bcrypt@3 --save

也许会对您有所帮助。

PS对我而言,第二个cmd有效,并且我的Node版本是14。

答案 19 :(得分:0)

首先检查node-modules文件夹中是否有名称为bcrypt的文件夹。如果存在另一个名称,则将其重命名;例如bcrypt-pbkdf必须编辑为bcrypt。如果没有这样的文件夹,请在cmd中执行此操作:

npm install node-gyp -g
# bcrypt reqired node-pre-gyp
npm install -g node-pre-gyp
npm install bcrypt -g
npm install bcrypt --save

答案 20 :(得分:0)

检查您的节点版本,然后转到此链接https://github.com/kelektiv/node.bcrypt.js,以将兼容的bcrypt版本与您的node.js版本进行匹配

我使用的是node.js v14.7.0,当我尝试运行'npm install bcrypt or bcryptjs'时 它给我错误 然后我运行npm install bcrypt@5.0.0

并修复错误。

版本兼容性

答案 21 :(得分:0)

您必须安装bcryptjs。使用npm install bcryptjs --save在我被困在这里时对我有用。

答案 22 :(得分:0)

如果在应用上述解决方法后仍无法解决问题,则可以尝试按照{strong> [Fix bug] update bcrypt to 3.0.7

中所述更新package.json中的版本

enter image description here

希望这会有所帮助。

答案 23 :(得分:0)

我无法运行任何npm commads。所以,我从这个链接https://github.com/kelektiv/node.bcrypt.js下载 创建文件夹bcrype并使用它。 现在解决。

答案 24 :(得分:0)

使用npm install bcrypt命令无法为我解决问题。

最后,我修复了以下命令,问题已解决。

npm install node-gyp -g
# bcrypt reqired node-pre-gyp
npm install -g node-pre-gyp
npm install bcrypt -g

npm install bcrypt --save

节点-v v8.16.1

npm -v 6.4.1

答案 25 :(得分:0)

对我来说,该问题可通过以下步骤解决: 以上没有解决我的问题, 1)项目目录中的rm -rf node_modules 2)rm package-lock.json 3)只需检查您现在是否拥有package.json文件 4)npm安装

就是这样,您将正确安装bcrypt。希望这会有所帮助。

答案 26 :(得分:0)

问题可能是因为没有必要的

sudo apt-get install -y build-essential python

然后将bcrypt与 如果您使用的是 npm

npm install bcrypt
npm rebuild

,或者如果您使用的是纱线

yarn add bcrypt
yarn install
yarn build

答案 27 :(得分:0)

  • 节点版本与Bcrypt版本
  • 0.4 <= 0.4
  • 0.6、0.8、0.10> = 0.5
  • 0.11> = 0.8
  • 4 <= 2.1.0
  • 8> = 1.0.3
  • 10,11> = 3
  • 12> = 3.0.6

我遇到了同样的问题,在安装bcrypt特定版本取决于您的节点版本之后,它开始起作用。

在我的情况下,我的nodeJS版本是12.3.0,因此我通过指定版本来安装 “ npm install bcrypt@3.0.6。”

我希望它能解决问题。

答案 28 :(得分:0)

如果使用Travis CI之类的程序时遇到此错误,请考虑使用npm install --build-from-source

答案 29 :(得分:0)

确保您也处于节点的稳定版本中。如果您使用的是n,则只需:

sudo n stable

然后再次:

npm install bcrypt --save

对我有用。

答案 30 :(得分:0)

我正在使用bcrypt和打字稿

npm i --save @types/bcryptjs

帮助我解决了以上错误。

答案 31 :(得分:0)

首先从节点模块中删除bcrypt模块。 然后尝试以下步骤:

1)npm install node-gyp -g

2)npm install bcrypt -g

3)npm install bcrypt -save

这肯定会解决问题。

答案 32 :(得分:0)

这对我有用:

npm install bcryptjs

然后:

npm update

答案 33 :(得分:0)

我遵循了一些课程,对我来说它没有用。 我的错误是:

var bcrypt = require('bcrypt.js'); 

但是当我把它改成

var bcrypt = require('bcryptjs');

有效!