【问题标题】:Ruby on Rails - Bad interpreterRuby on Rails - 错误的解释器
【发布时间】:2014-09-25 15:51:24
【问题描述】:

我在这里遇到了一个奇怪的问题。当我使用rvm 创建gemset 时,which rails 的路径发生了变化。以下是我在终端上运行的命令。我在 SO 上提到了相关问题,但对我没有多大帮助。

someuser@ubuntu-laptop:~/sandbox/some_app$ rvm use 2.0.0
Using /home/someuser/.rvm/gems/ruby-2.0.0-p247

someuser@ubuntu-laptop:~/sandbox/some_app$ which ruby
/home/someuser/.rvm/rubies/ruby-2.0.0-p247/bin/ruby

someuser@ubuntu-laptop:~/sandbox/some_app$ which rails
/home/someuser/.rvm/gems/ruby-2.0.0-p247/bin/rails

someuser@ubuntu-laptop:~/sandbox/some_app$ rvm gemset use some_app (I also tried rvm gemset use 2.0.0@some_app --create)
Using ruby-2.0.0-p247 with gemset some_app

someuser@ubuntu-laptop:~/sandbox/some_app$ which ruby
/home/someuser/.rvm/rubies/ruby-2.0.0-p247/bin/ruby

someuser@ubuntu-laptop:~/sandbox/some_app$ which rails
/usr/local/bin/rails (<--- the path changed!)

rails sbundle 命令报错:

someuser@ubuntu-laptop:~/sandbox/some_app$ rails s
-bash: /usr/local/bin/rails: /usr/bin/ruby1.8: bad interpreter: No such file or directory

我必须运行以下命令来修复路径:

someuser@ubuntu-laptop:~/sandbox/some_app$ rvm use 2.0.0
Using /home/someuser/.rvm/gems/ruby-2.0.0-p247

someuser@ubuntu-laptop:~/sandbox/some_app$ which rails
/home/someuser/.rvm/gems/ruby-2.0.0-p247/bin/rails

我在.bash_profile 中关注了条目:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*

为什么会这样?我该如何解决这个问题,所以路径不会随着 gemset 的更改/创建而改变?

【问题讨论】:

    标签: ruby-on-rails rvm bundle gemset


    【解决方案1】:

    看来您以前会使用

    安装 Rails

    sudo apt get install rails

    which rails 返回路径中rails 的第一次出现。

    试试这个 - 首先通过 sudo apt-get remove rails 删除本机导轨

    【讨论】:

    • 试过了,没用。收到Package 'rails' is not installed, so not removed
    • 我认为您将拥有一个名为 /usr/local/bin/rails 的文件。您可以尝试将其删除并再次检查吗?
    • 不确定这会有什么帮助,但我试过了,但没有帮助。
    猜你喜欢
    • 2018-06-11
    • 1970-01-01
    • 1970-01-01
    • 2015-01-30
    • 1970-01-01
    • 2017-06-15
    • 2014-04-17
    • 1970-01-01
    • 2011-03-17
    相关资源
    最近更新 更多