执行bash shell脚本时,我使用的是ruby 1.9.3。然后,在脚本中,我想切换到JRub(我正在使用rvm)。我尝试在脚本中执行rvm use jruby
切换到JRuby,但这不起作用,它说:
RVM is not a function, selecting rubies with 'rvm use ...' will not work.
You need to change your terminal emulator preferences to allow login shell.
Sometimes it is required to use `/bin/bash --login` as the command.
Please visit https://rvm.io/integration/gnome-terminal/ for a example.
./run.sh: line 10: jruby: command not found
当我在命令提示符处type rvm | head -n1
时,我得到:rvm is a function
。所以我不确定这个问题。我想可能是因为我使用sudo(sudo rvm install jruby
)安装了JRuby。所以我使用sudo再次运行shell脚本。我再次收到错误。
如何使用rvm从bash shell脚本中切换rubies?
由于
答案 0 :(得分:6)
我最终将此添加到该行之前:
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"
正如在这个帖子中所解释的那样(对不起 - 虽然我以前知道过这个帖子,但我并没有完全掌握它):
答案 1 :(得分:0)
/ complete / path / to / rvm你的shell似乎定义了'rvm'内置命令。