ruby-on-rails – Heroku无法检测到rake任务(LoadError:无法加载此类文件 – rspec / core / rake_task)

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – Heroku无法检测到rake任务(LoadError:无法加载此类文件 – rspec / core / rake_task)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用travisCI部署到heroku,我收到此错误.它刚刚开始发生.

我有基本的rails Rakefile,我有一个看起来像这样的文件,否则travis无法检测到rake任务:

  1. # lib\tasks\spec.rake
  2. require 'rspec/core/rake_task'
  3. RSpec::Core::RakeTask.new
  4. task :default => :spec

为什么这个错误会专门针对heroku显示

编辑 – 我给出了(更好)答案的类似版本:

  1. begin
  2. require 'rspec/core/rake_task'
  3. desc "Run all examples"
  4. RSpec::Core::RakeTask.new(:spec) do |t|
  5. t.rspec_opts = %w[--color]
  6. t.pattern = 'spec/*_spec.rb'
  7. end
  8. rescue LoadError
  9. end

解决方法

如果rspec不在生产组中(通常不是),那么在像heroku这样的生产环境中运行时,您发布的代码将会失败.

在rspec docs中,他们建议这样做:

  1. begin
  2. require 'rspec/core/rake_task'
  3. RSpec::Core::RakeTask.new(:spec)
  4. rescue LoadError
  5. end

所以没有rspec不会阻止你的rakefile加载.

猜你在找的Ruby相关文章