【发布时间】:2020-01-20 00:33:47
【问题描述】:
我是 Ruby 新手,正在学习一个示例,但在 macOS 的本地环境中遇到问题,收到 LoadError 试图在单个 ruby 文件中要求捆绑程序。
我有一个包含以下内容的 bcrypt.rb 文件:
require 'bunder/inline'
gemfile true do
source 'https://rubygems.org'
gem 'bcrypt'
end
require 'bcrypt'
my_password = BCrypt::Password.create("my password")
my_password.version #=> "2a"
my_password.cost #=> 12
my_password == "my password" #=> true
my_password == "not my password" #=> false
我希望该文件成功地需要 bundler 和 bcrypt 并运行代码,但不会产生任何输出。当我尝试运行 bcrypt.rb 文件时,出现以下错误:
Traceback (most recent call last):
2: from bcrypt.rb:1:in `<main>'
1: from /Users/rturner/.rvm/rubies/ruby-2.6.4/lib/ruby/site_ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require'
/Users/rturner/.rvm/rubies/ruby-2.6.4/lib/ruby/site_ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require': cannot load such file -- bunder/setup (LoadError)
我注意到我的 GEM_HOME 环境变量设置为 /Users/rturner/.rvm/gems/ruby-2.6.4 似乎不包含 gem 文件。我在 .bash_profile 文件中加载 rvm 脚本后添加了一行:
export GEM_HOME="/Users/rturner/.rvm/gems/default/gems"
这将 GEM_HOME 变量更改为包含 gem 的目录,但没有解决问题。我在本地设置中使用 rvm,使用 brew 安装,并且我已经使用 brew 安装了捆绑程序,运行 brew update 和 brew upgrade 以及尝试捆绑程序页面上列出的一般故障排除方法。任何人都可以帮忙吗?谢谢!
【问题讨论】:
标签: ruby macos homebrew bundler