Kox*_*xzi 8 ruby ruby-on-rails heroku
我正在使用travisCI部署到heroku,我收到此错误.它刚刚开始发生.
我有基本的rails Rakefile,我有一个看起来像这样的文件,否则travis无法检测到rake任务:
# lib\tasks\spec.rake
require 'rspec/core/rake_task'
RSpec::Core::RakeTask.new
task :default => :spec
Run Code Online (Sandbox Code Playgroud)
为什么这个错误会专门针对heroku显示?
编辑 - 我给出了(更好)答案的类似版本:
begin
require 'rspec/core/rake_task'
desc "Run all examples"
RSpec::Core::RakeTask.new(:spec) do |t|
t.rspec_opts = %w[--color]
t.pattern = 'spec/*_spec.rb'
end
rescue LoadError
end
Run Code Online (Sandbox Code Playgroud)
如果rspec不在生产组中(通常不是),那么在像heroku这样的生产环境中运行时,您发布的代码将会失败.
在rspec 文档中,他们建议这样做:
begin
require 'rspec/core/rake_task'
RSpec::Core::RakeTask.new(:spec)
rescue LoadError
end
Run Code Online (Sandbox Code Playgroud)
所以没有rspec不会阻止你的rakefile加载.