2

每次尝试通过 pow 运行我的应用程序时,我都会收到以下错误

Bundler::RubyVersionMismatch: Your Ruby version is 1.9.3, but your Gemfile specified 2.0.0

我只是想将我的项目与 pow 链接起来,显然我有不同版本的 ruby​​?我正在使用 rbenv 来管理我的 ruby​​ 版本。我已将 rbenv 设置为在本地设置 2.0.0-p0,如果我打电话ruby -v我会得到ruby 2.0.0p0 (2013-02-24 revision 39474) [x86_64-darwin12.4.0]

$rbenv versions
  system
  1.9.3-p327
* 2.0.0-p0 (set by /Users/fortknokx/Personal work/cave/.rbenv-version)

我试图“rbenv rehash”并刷新“.ruby-version”似乎没有什么能说服 pow 我正在使用 ruby​​ 2.0.0

我从 pow 得到的错误的完整堆栈如下

~/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/bundler-
~/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/bundler-1.3.5/lib/bundler/definition.rb:361:in `validate_ruby!'
~/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/bundler-1.3.5/lib/bundler.rb:116:in `setup'
~/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/bundler-1.3.5/lib/bundler/setup.rb:17:in `<top (required)>'
~/.rbenv/versions/1.9.3-p327/lib/ruby/1.9.1/rubygems/custom_require.rb:60:in `require'
~/.rbenv/versions/1.9.3-p327/lib/ruby/1.9.1/rubygems/custom_require.rb:60:in `rescue in require'3.5/lib/bundler/definition.rb:361:in `validate_ruby!'
~/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/bundler-1.3.5/lib/bundler.rb:116:in `setup'
~/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/bundler-1.3.5/lib/bundler/setup.rb:17:in `<top (required)>'
~/.rbenv/versions/1.9.3-p327/lib/ruby/1.9.1/rubygems/custom_require.rb:60:in `require'
~/.rbenv/versions/1.9.3-p327/lib/ruby/1.9.1/rubygems/custom_require.rb:60:in `rescue in require'

一些战俘如何认为我在 1.9.3-p327 上?任何人都有类似的问题。它是 ruby​​ 2.0.0 的东西还是 pow 和 rbenv 有拳击比赛?

4

1 回答 1

2

使用 pow 和 rbenv 存在一些问题,如下所述:rbenv does not work well with pow

问题似乎集中在 powconfig 文件的一些 PATH 问题上,因此 pow 尝试使用您的默认 ruby​​ 安装(假设为 1.9.x)而不是您通过 rbenv 指定的原因。如果您使用的是 OSX mavericks,请将以下内容添加到您的 ~/.powconfig 文件中,完成更改后重新启动 pow,您应该一切顺利。(根据最后的建议):

export RBENV_ROOT=/usr/local/var/rbenv # Might not be necessary for pre-Mavericks OSX
eval $(rbenv init -)
export PATH=$(rbenv root)/shims:$(rbenv root)/bin:$PATH
于 2014-01-02T18:26:52.583 回答