1

我刚得到 Ruby 动作,我想试试 Cocoapods。我按照网站上的要求安装了它:

http://www.rubymotion.com/developer-center/articles/cocoapods/

我加

在我简单的“Hello”项目中需要“motion-cocoapods”。尝试耙它时出现此错误:

耙中止!无法激活 cocoapods-0.16.1,因为 rake-10.0.3 与 rake (~> 0.9.4) 冲突

我想这与我的 rake 版本有关,但我不知道我需要做什么来解决这个问题。请帮忙!

4

2 回答 2

3

这是由于安装了比 0.9.x 更新的 rake 版本。当您运行时rake,它会加载最新版本(在您的情况下为 10.0.3)。然后,当 cocoapod gem 尝试加载时,它会尝试激活 rake 0.9.x 并失败(这~> 0.9.4意味着它将接受任何以 开头的版本0.9.)。

一种解决方案是完全删除rakegem 并显式安装 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.

于 2013-01-20T19:27:06.683 回答
0

我可以按照这个日本博客上的步骤解决这个问题:

http://blog.amacou.net/post/37702092871/rubymotion-cocoapods-rake

第一次卸载:

gem卸载运动cocoapods gem卸载cocoapods

下载可可足类:

git clone git://github.com/CocoaPods/CocoaPods.git

找到 gemspec 文件

并改变这个:

s.add_runtime_dependency 'rake', '~> 0.9.4'

对此:

s.add_runtime_dependency 'rake', '> 0.9.4'

然后将其安装为 gem

耙宝石:安装

然后重新安装motion-cocoapods:

gem install motion-cocoapods

我的感觉是这是一个黑客攻击,我担心它可能会在其他地方引起问题。如果有人有更好的答案,请发布。

于 2013-01-19T20:27:59.147 回答