この行を含む Ruby コードのサンプルを数多く見てきました (たとえば、http://www.sinatrarb.com/ )。この要求の目的は何ですか?
# require 'rubygems'
require 'sinatra'
get '/hi' do
"Hello world!"
end
いずれの場合も、コードはこの行がなくても機能します。
この行を含む Ruby コードのサンプルを数多く見てきました (たとえば、http://www.sinatrarb.com/ )。この要求の目的は何ですか?
# require 'rubygems'
require 'sinatra'
get '/hi' do
"Hello world!"
end
いずれの場合も、コードはこの行がなくても機能します。
require 'rubygems'
Rubyを調整して、loadpath
Rubygemsを介してインストールしたgemを、を取得せずに正常に要求できるようにしますLoadError: no such file to load -- sinatra
。
rubygems-1.3.6ドキュメントから:
RubyGemsが必要な場合、Kernel#requireは、オンデマンドでgemをロードできる独自のものに置き換えられます。
require'x'を呼び出すと、次のようになります。
ファイルを既存のRubyロードパスからロードできる場合は、そうです。
それ以外の場合は、インストールされているgemで一致するファイルが検索されます。gem'y'で見つかった場合、そのgemがアクティブ化されます(ロードパスに追加されます)。
そのファイルがすでにロードされている場合はfalseを返す通常のrequire機能が保持されます。
これが必要な理由を理解するには、 Kernel#requireのドキュメントを参照してください。
それはしばしば余分です。ただし、コマンドを使用して、特定の gem の特定のバージョンを要求することができますgem
。
以前の(および正解)への追加として:Ruby 1.9以降にはRubyGemsが組み込まれているため、require 'rubygems'
. ソースはこちら