1

我目前的环境有一个非常奇怪的问题。

我正在使用 rbenv,并且我的 ruby​​ 的全局和本地版本设置为 ruby​​ 1.9.3-p448

我什至可以运行:

$ ruby -v
ruby 1.9.3p448 (2013-06-27 revision 41675) [x86_64-darwin12.3.0]

我的捆绑包工作得很好,但是一旦我运行:

bundle exec rails server

我得到:

env: ruby1.9.1: No such file or directory

我知道这是一个项目特定的问题,因为我可以很好地启动其他 Rails 服务器。我猜这意味着我的项目试图以某种方式将我的 ruby​​ 1.9.3 与 ruby​​1.9.1 链接起来

有没有人有任何调试想法?我觉得我已经尝试了一切。=/

4

3 回答 3

0

ruby您的 Gemfile 或项目中的.ruby-versionor文件中可能有一个声明.rbenv-version,指定了您没有的 Ruby。

于 2013-09-05T16:13:21.570 回答
0

只是为了确保您在当前的 ruby​​ 环境中拥有它,请执行以下操作:

gem install bundler
rbenv rehash
bundle install # optionally, include --binstubs
bundle exec rails server
于 2013-09-05T16:13:28.463 回答
0

事实证明,项目中有一个文件 .bundle/config,上面写着:

BUNDLE_PATH: vendor/bundle

我看了一下vender/bundle,果然有两个目录,1.8.7和1.9.1

我确信我的项目可以使用 1.9.3,我要么必须在那里创建一个新目录,要么从我的 .bundle 配置中删除捆绑路径。

为了解决这个问题,我将安装 1.9.1。o_o

于 2013-09-05T16:43:12.377 回答