现在,我正在使用bundler来管理我的宝石。 Bundler为不同的环境加载不同的宝石。
我有一些使用测试宝石(rspec)的rake任务,但这些会导致生成环境中没有加载gem的问题。
所以我希望能够做的只是在测试环境中加载rake任务(以及与之关联的require'rspec / core / rake_task'行)。
我无法找到最佳方法。
我目前有:
require "bundler"
require 'rspec/core/rake_task'
desc "Task for running Rspec tests"
RSpec::Rake::SpecTask.new(:spec)
答案 0 :(得分:11)
怎么样:
require "bundler"
unless Rails.env.production?
require 'rspec/core/rake_task'
desc "Task for running Rspec tests"
RSpec::Rake::SpecTask.new(:spec)
end
不是最漂亮的解决方案,但它会起作用。
答案 1 :(得分:0)
可能的解决方案,可能不适合所有设置,是将rake任务添加到gitignore。