- Bundlerは*.gemspecで定義された依存gemを読み込むことができる
- gemの中にはgem名とrequireするときの名前が違うものがある
- Gemfileでrequireするときの別名を指定することができる
*.gemspecで定義した依存gemを読み込むときの別名をGemfileで指定することができます。
*.gemspec
Gem::Specification.new do |s|
# ...
s.add_development_dependency "activemodel"
# ...
end
Gemfile
source :rubygems
gemspec # load from *.gemspec
group :development do
# *.gemspecでdevelopment dependencyとして定義されたgemは
# Bundlerの:development groupに属する
gem 'activemodel', require: 'active_model'
end
*.gemspecで適切に依存gemをグループ分けするとたいへんべんりでよいです。