我应该将属于 Ruby 标准库一部分的文件添加到“Gemfile”中吗?
我需要在代码中执行 require 'openssl'
。否则,我会收到 NameError: uninitializedconstant Object::OpenSSL
。但是,当我执行gem list
时,我没有看到openssl
。我正在将 Sinatra 应用程序部署到 Heroku stackambon-mri-1.9.2。我应该将 openssl
添加到 Gemfile
中吗?我不这么认为,因为我认为 openssl
是 Ruby 标准库的一部分。另外,base64
怎么样?
I need to do require 'openssl'
in my code. Otherwise, I get NameError: uninitialized constant Object::OpenSSL
. But, when I do gem list
, I don't see openssl
. I'm deploying a Sinatra app to Heroku stack bamboo-mri-1.9.2. Should I add openssl
to the Gemfile
? I don't think so because I think openssl
is part of the Ruby Standard Library. Also, what about base64
?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
对于您支持的 Ruby 版本,您不需要在 Gemfile 中包含 Ruby 标准库中的 gem。
您可以让您的程序自动要求 Gemfile 中的所有 gem。 Rails 就是这样做的。否则,只需在需要它的文件中
require 'gem_name'
即可。You do not need to include gems in the Gemfile that are in the Ruby Standard Library for the versions of Ruby you support.
You can have your program auto-require all gems in Gemfile. Rails does this. Otherwise, just
require 'gem_name'
in the files that require it.您很可能在没有 openssl 支持的情况下编译了 ruby。如果您使用的是 RVM,可以尝试这个
It's very likely that you have compiled ruby without openssl support. If you are using RVM, you can try this