繁体   English   中英

如何在 MacOSX 上使用“RVM --default”

[英]How to use "RVM --default" on MacOSX

在使用 Ruby 和 Rails 一段时间后,我想尝试 RVM。 一切正常,除了一件事:

在新打开的终端中, ruby指向系统的 ruby​​,尽管我使用了rvm --default命令。

user@terra ~ $ ruby -v
ruby 1.8.7 (2010-08-16 patchlevel 302) [i686-darwin10]
user@terra ~ $ which ruby
/opt/local/bin/ruby
user@terra ~ $ rvm list
   ruby-1.8.7-p334 [ ]
=> ruby-1.9.2-p180 [ ]

调用rvm reload后一切正常

user@terra ~ $ rvm reload
user@terra ~ $ ruby -v
ruby 1.9.2p180 (2011-02-18 revision 30909) [x86_64-darwin10.7.1]
tmangner@terra ~ $ which ruby
/Users/user/.rvm/rubies/ruby-1.9.2-p180/bin/ruby

我按照文档中的描述设置了我的.bash_profile

[[ -s "/Users/user/.rvm/scripts/rvm" ]] && source "/Users/user/.rvm/scripts/rvm" 

--default似乎对我不起作用......

user@terra ~ $ rvm use 1.9.2 --default
Using /Users/user/.rvm/gems/ruby-1.9.2-p180
user@terra ~ $ rvm default
user@terra ~ $

我使用的是 Mac OS X Snow Leopard (10.6.6)

我曾经遇到过同样的问题。 结果是 rvm-script 被加载了两次,这有点破坏了。

检查打开 shell 时加载的所有文件:

/etc/profile
~/.bashrc
~/.bash_profile

等等,并确保它们不会加载 RVM 两次。

也许放

echo "Going to load RVM"

[[ -s "/Users/user/.rvm/scripts/rvm" ]] && source "/Users/user/.rvm/scripts/rvm"

在您的~/.bash_profile中查看它是否发生。

移动初始化

[[ -s "/usr/local/rvm/scripts/rvm" ]] && . "/usr/local/rvm/scripts/rvm"

~/.bash_profile的底部为我解决了这个问题。

ZSH 用户可能的修复方法:

不知何故,我有:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"

在 .zprofile 和 .zshrc 中。

从 .zprofile 中删除该行解决了该问题。 (尽管您应该能够从中删除,只要它只出现一次)

运行命令:

rvm use --default 1.9.2?

这在 openSUSE 上对我有用,但我不知道 Snow Leopard。

我有同样的问题。

移动:

 [[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function

在 MacPorts 之后:

export PATH=/opt/local/bin:/opt/local/sbin:$PATH

为我解决了这个问题。

我遇到了同样的问题,因为我使用Oh-My-Zsh ,如果我重复调用 RVM,跟踪起来会有点困难。

我通过将调用从位于\\oh-my-zsh内的\\oh-my-zsh \\custom文件夹中的单独 rvm.zsh 文件移动到我的主 .zshrc 文件的末尾来修复它。

看起来 RVM 对不在 zsh 初始化序列结束时被调用非常敏感。

代替:

rvm use 1.9.2 --default 

我用的是完整版:

rvm use ruby-1.9.2-p290 --default 

这在 zsh 中对我有用。

作为完整性检查,请确保您正在处理的项目与您尝试在.ruby-version文件中设置为默认值的 Ruby 版本相同。

它发生在我身上,我无法弄清楚为什么rvm不使用我的默认值。

我在 Mac OS X 10.7 上遇到了同样的问题,后来我发现我的帐户没有添加到“rvm”组中。

在我添加自己之后,我可以设置--default

我的问题已通过更改解决

PATH=/usr/local/bin

PATH=$PATH:/usr/local/bin

在我的.zshrc文件中。

显然,您首先需要确保正确安装了 RVM,然后运行type rvm | head -1 type rvm | head -1检查@choise 建议的内容。 rvm use --default 1.9.3-p362现在可以正常工作。

有关更多信息请参阅“ 有时,CD 到带有 .rvmrc 的目录不会设置 Ruby 版本或 gemset ”。

试试这个来为新的 shell 设置默认的 Ruby:

sudo rvm alias create default 1.9.2

对于 Mac OS 上的一些真正的新手,请使用 JewelryBox 并在首选项部分找到

"show default ruby in system menu bar"

检查此项允许您在红宝石之间切换。

您可以通过“system@*”选项来选择您预先安装的 ruby​​gems(如果您有 ruby​​gems)。

我遵循了上面的建议 - 检查了我的 bash_profile(这很好)并且还注意到在 ubuntu 中你可能需要领导https://rvm.io/support/faq/#shell_login的建议

但是,我仍然遇到这个问题,直到我意识到我尝试运行的项目有一个 .rvmrc 文件,该文件指定了我尚未安装的 ruby​​ 版本。 当我纠正这个问题时 - 我不再遇到这个问题(所以实际上并不是使用默认值不起作用,而是这个项目覆盖了它)

我不得不删除[[ -s "/usr/local/rvm/scripts/rvm" ]] && . "/usr/local/rvm/scripts/rvm" 来自 ~/.bash_profile 的[[ -s "/usr/local/rvm/scripts/rvm" ]] && . "/usr/local/rvm/scripts/rvm"行,必须将其移动到 ~/.bashrc 的最底部。

这解决了 OS X 10.10.1 上的问题。

您需要将 RVM 的路径放在 PATH 前面:

$ export PATH=/path/to/rvm-dir:$PATH

什么type rvm | head -1 type rvm | head -1打印出来?

在我最新的 MacOS XI 上的.bash_profile ,必须输入:

# Ruby Version Manager
[[ -s "/usr/local/rvm/scripts/rvm" ]] && . "/usr/local/rvm/scripts/rvm"

我还创建了一个 gemset 并将其设置为默认值:

rvm reload
rvm install 1.9.2
rvm --create use 1.9.2@default
rvm --default use 1.9.2@default

出于某种原因,我的$HOME/bin目录中有rubygemrake , ... 文件存根。 因此我的rvm --default use 1.9.3没有按预期工作。 删除$HOME/bin目录解决了这个问题。

cat  bin/ruby 
#!/usr/bin/env bash

if [[ -s "/usr/local/rvm/environments/ruby-1.9.2-p290" ]]
then
  source "/usr/local/rvm/environments/ruby-1.9.2-p290"
  exec ruby "$@"
else
  echo "ERROR: Missing RVM environment file: '/usr/local/rvm/environments/ruby-1.9.2-p290'" >&2
  exit 1
fi

同样的铅在这里。 线在那儿有两次,它把它弄坏了。。。。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM