sau*_*atz 6 ruby bash activesupport bundler
我正在使用OS X 10.10.5(Yosemite).我正在尝试为MacDown 克隆github repo.README中的说明说克隆后应该这样做
git submodule init
git submodule update
bundle install
bundle exec pod install
Run Code Online (Sandbox Code Playgroud)
我不是一个红宝石程序员,所以我不得不安装Bundler.前两个步骤运行正常,但是当我试图运行时,bundle install我得到了错误
activesupport-5.0.0.1 requires ruby version >= 2.2.2, which is incompatible with the current version, ruby 2.0.0p481
Run Code Online (Sandbox Code Playgroud)
所以我尝试了brew install ruby,现在我有了
saul@miniMac ? ruby --version
ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-darwin14]
Run Code Online (Sandbox Code Playgroud)
但是,bundle install给我与以前相同的错误消息.很明显,它正在找到红宝石,/usr/bin/ruby而不是那个/usr/local/bin/ruby.我该如何纠正?
我想也许问题是我在升级ruby之前安装了bundler,既没有sudo gem uninstall bundler也没有sudo gem uninstall bundle任何影响,我不知道还有什么可以尝试.
以下是所有输出,如果相关:
saul@miniMac ? bundle install
Fetching gem metadata from https://rubygems.org/..........
Fetching version metadata from https://rubygems.org/..
Fetching dependency metadata from https://rubygems.org/.
Resolving dependencies...
activesupport-5.0.0.1 requires ruby version >= 2.2.2, which is incompatible with
the current version, ruby 2.0.0p481
Run Code Online (Sandbox Code Playgroud)
编辑:
谢谢你的建议.我gem install bundler再次尝试,但没有帮助.我收到了同样的错误消息.这是我得到的bundle env
saul@miniMac ? bundle env
Environment
Bundler 1.13.6
Rubygems 2.0.14
Ruby 2.0.0p481 (2014-05-08 revision 45883) [universal.x86_64-darwin14]
Git 2.5.4 (Apple Git-61)
Gemfile
source 'https://rubygems.org'
gem 'cocoapods', '0.39.0'
Gemfile.lock
<No /Users/saul/Projects/macdown/Gemfile.lock found>
Run Code Online (Sandbox Code Playgroud)
编辑2:
saul@miniMac ? which -a bundle
/usr/local/bin/bundle
/usr/bin/bundle
Run Code Online (Sandbox Code Playgroud)
看来您的 PATH 可能有一个条目指向旧版本的 Ruby,尽管有较新的版本 (2.3.1),但它会使用它在 PATH 中找到的条目之一中找到的第一个 ruby 二进制文件,该条目恰好是旧版本。您可以尝试将最新的 Ruby 路径添加为 PATH 变量的第一个条目,但如果运行子 shell 并加载默认 PATH,则最新 Ruby 的路径将被覆盖。话虽这么说,我认为最简单的方法是在这里使用 rvm 来确保您的环境已设置为您打算在任何给定时间使用的版本。RVM可以在同一个系统中管理多个版本的ruby。请在此处阅读有关 RVM 的更多信息。
在同一终端窗口中运行以下所有命令: