这是由于安装了比 0.9.x 更新的 rake 版本。当您运行时rake
,它会加载最新版本(在您的情况下为 10.0.3)。然后,当 cocoapod gem 尝试加载时,它会尝试激活 rake 0.9.x 并失败(这~> 0.9.4
意味着它将接受任何以 开头的版本0.9.
)。
一种解决方案是完全删除rake
gem 并显式安装 0.9.4 版本:
gem uninstall rake
gem install rake --version '0.9.6'
但是,如果您有任何其他需要更新版本 rake 的项目,这可能会成为一个问题。更好的解决方案是使用 Bundler:
gem install bundler
Gemfile
在您的项目文件夹中创建一个包含:
source :rubygems
gem 'rake'
gem 'motion-cocoapods'
将以下内容添加到Rakefile
,紧接在该require 'motion/project'
行下方:
require 'bundler'
Bundler.require
然后bundle install
从控制台运行。这将在 rake 0.9.6 上锁定此特定项目。唯一需要注意的是,您可能需要在所有 rake 命令前加上bundle exec
.