宝石路径恢复到以前的路径

时间:2016-02-12 05:07:05

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-4

刚刚安装了ruby 2.3.0和rails 4.2

第一次运行bundle install,我的应用程序从我的本地服务器成功运行。

添加了一些宝石,再次运行捆绑安装......看来我以前安装的宝石再次被安装。

尝试再次运行rails服务器,这就出现了。

-bash: /usr/local/bin/rails: /usr/bin/ruby1.9.1: bad interpreter: No such file or directory

这里只是疯狂猜测,但我认为gem文件夹正在恢复到我的旧文件夹,这是ruby 1.9.1

任何形式的帮助将不胜感激。

2 个答案:

答案 0 :(得分:1)

您可以阅读有关在rvm project workflows

设置应用/项目环境的不同方法

如果您使用rvm来管理rubies,只需在gem文件的顶部添加此行..

ruby '2.3.0' #or the target version of the app

#ruby=2.3.0

cd回到目录中..您将收到警告但只是忽略它。现在,每当您更改回您的app目录时,它都会将版本更改为您的gem文件中提到的版本。默认值可能设置为其他版本..

您也可以使用

bash --login
rvm use '2.3.0' --default

设置ruby系统范围的默认版本。

如果这不起作用..尝试检查

是否存在正确的ruby版本
rvm list

然后尝试使用

bash --login
rvm use '2.3.0' #or the target version

并且每次切换到最新版本都不做以上任何事情,除非安装版本时将其设置为默认值..但是您必须为安装的每个二进制红宝石再次安装所有宝石..

<强> P.S。修复项目/应用程序的ruby版本是一个很好的安全做法,所以我建议你使用任何方法修复应用程序的ruby版本,在Gemfile中提到它很干净,当你有意义时只需要设置ruby版本。

注意。如果您还没有,或者您可能遇到问题,请先执行@ Shrikant1712 的回答。

答案 1 :(得分:0)

您需要使用gem install bundler命令安装gem bundler,然后再次尝试使用bundle install命令。

(这里我假设您已经使用RVM安装ruby。)

你仍然得到相同类型的错误,这意味着你的rvm没有正确设置。请检查以下文件中的$ PATH

  • 〜/ .profile中
  • 〜/ .bashrc中
  • 〜/ .bash_profile中
  • 〜/ .gemrc

您可以使用source ~/.rvm/scripts/rvm来设置rvm。