jan*_*o-m 1 ruby testing gem bundler gemspecs
我正在开发一个gem,我的Gemfile看起来像这样:
source :rubygems
gemspec
group :development, :test do
gem "pry"
gem "debugger"
gem "rake"
end
Run Code Online (Sandbox Code Playgroud)
但是,我不希望人们必须安装pry和debugger运行测试,但我也希望能够在我的测试中要求它们(因为我正在运行带有前缀的测试bundle exec,我无法在我的加载路径中获取它们如果他们不在Gemfile中).我该如何实现这一目标?
另外,何时将用于开发的宝石放在gemspec中,何时将它们放入Gemfile中?我真的不知道区别.
您可以将gemspec作为开发依赖项添加到gemspec中,如下所示:
Gem::Specification.new do |s|
# ...
s.add_development_dependency 'pry'
s.add_development_dependency 'debugger'
s.add_development_dependency 'rake'
end
Run Code Online (Sandbox Code Playgroud)
这些只会在处理gem时安装,而不是在安装gem本身时安装.