【问题标题】:no such file to load -- bcrypt_ext (via devise)没有要加载的文件——bcrypt_ext(通过设计)
【发布时间】:2010-10-10 11:52:16
【问题描述】:

我在 rails 3 上的设计(当前 gem)中使用数据库身份验证,尝试使用用户名/密码登录时出现以下错误。

no such file to load -- bcrypt_ext 

This error occurred while loading the following files:
   bcrypt
   bcrypt_ext

我之前已经“成功安装了 bcrypt-ruby-2.1.2”gem。

有什么想法吗?我也尝试给bundler git repo地址并获取master,但这并没有解决问题。

【问题讨论】:

    标签: ruby-on-rails devise bundler bcrypt


    【解决方案1】:

    我也有这个问题。当我安装 gem 时,输出告诉我

    Building native extensions.  This could take a while...
    Successfully installed bcrypt-ruby-3.0.1
    

    所以我假设它实际上已经构建了本机扩展。但是当我在 .../gems/bcrypt-ruby-2.1.4/ext/mri 中寻找时,我发现它似乎没有构建任何东西。

    我手动进去跑了

    cd [path to your gems folder]/gems/bcrypt-ruby-2.1.4/ext/mri
    ruby extconf.rb
    make
    sudo make install
    

    这对我有用。

    【讨论】:

    • 这对我有用。我得到了最随机的 bcrypt 错误。运行 rails server 可以工作...然后我会切换分支,切换回来而不进行更改...然后 rails server 将不再工作,说找不到 bcrypt。我遵循了这一点,现在它可以工作了。谢谢。
    • 在将 gem 捆绑在乘客根目录的子目录中时遇到了类似的问题。这对我有用。
    • 同样的问题。如何在安装了开发工具包的 Windows 7 上“制作”和“制作安装”?
    • 我只投了反对票,因为 sudo make 是 'nix 命令,而问题是 ruby​​。
    【解决方案2】:

    你的 Gemfile 中有这些吗?

    gem "bcrypt-ruby", :require => "bcrypt"
    

    另外 -- this issue on devise 可能适用,请查看

    【讨论】:

    • Gemfile中有这一行,还是一样的问题。
    【解决方案3】:

    我遇到了同样的问题。

    添加gemfile:

    gem "bcrypt-ruby", '~> 3.0.0'
    

    尝试捆绑安装,然后捆绑更新 bcrypt-ruby

    【讨论】:

    • 我不得不在 Windows 上强制将我的版本从 3.1.0 降到 3.0.1,它确实有效。
    【解决方案4】:

    我遇到了同样的问题,我只是删除了供应商目录并进行了捆绑安装。

    解决了这个问题。可能在制作中存在无法覆盖的问题。

    【讨论】:

    • 你可以发表评论。
    【解决方案5】:

    查看您的 Gemfile。看看你是否有“bcrpyt-ruby”宝石。如果它不存在,则添加“bcrpyt-ruby”gem。

    gem "bcrypt-ruby", :require => "bcrypt"
    

    【讨论】:

      【解决方案6】:

      我也遇到了同样的问题,这个解决了-

      gem 'bcrypt', '~> 3.1.9'
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-04-08
        • 2013-11-09
        相关资源
        最近更新 更多