Rake 说 "Don't know how to build task X",但 "rake -T" 还是列出了它 - 为什么?

Rake says "Don't know how to build task X", but "rake -T" lists it anyway - why?

我有一个新的 OS X El Capitan 设置,其中包含 Ruby 2.2 (Macports)、Rails 4.2.4 和用于现有应用程序的 Bundler。在许多其他 gem 中,这个应用程序使用 parallel_tests 来充分利用我的 8 核机器。 rake -T 列出了所有并行测试和规范任务,并且在过去我可以执行它们。但是当我现在这样做时,升级后,我得到

$ /opt/local/bin/rake parallel:prepare --trace
rake aborted!
Don't know how to build task 'parallel:prepare'
/opt/local/lib/ruby2.2/2.2.0/rake/task_manager.rb:62:in `[]'
/opt/local/lib/ruby2.2/2.2.0/rake/application.rb:149:in `invoke_task'

什么会导致任务在 rake -T 中列出,但在我尝试执行时找不到?

在这种情况下,原因是我将有问题的 gem 放在我的 Gemfile 中的组 :test 中。显然这导致了问题,将其从组中删除并使其全局可用解决了问题(再次调用 bundle 后)。

不过,我不知道这是否是通用解决方案。