RVM bir işlev değildir, 'rvm use…' ile rubies seçimi çalışmaz


160

Ruby sürümlerini listeleyin

console:~$ rvm list

rvm rubies

ruby-2.0.0-p481 [ i686 ]

# => - current
# =* - current && default
#  * - default

Ruby'nin belirli bir sürümünü kullanmaya çalışın

console:~$ rvm use 2.0.0

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.

1
Ne yapmaya çalışıyorsun?
Pavan

Hangi terminali kullanıyorsunuz? Oturum açma kabuğunun ayarlanması terminal uygulaması başına farklılık gösterir. Alternatif yapabildin source $HOME/.profileya source $HOME/.bash_profilervm muhtemelen init çizgisini tanımlamıştır nerede.
Michael Berkowski

Konsolunuzu bir giriş kabuğu olarak çalıştırmanız gerekir. Hangi sisteminiz var?
BroiSatse

Terminal Gnome Ubuntu 12.04 lt
Kullanıcı3678471

4
Eğer sigara giriş kabuğu vs bir oturum arasındaki farkı merak ediyor: unix.stackexchange.com/questions/38175/...
stephenbez

Yanıtlar:


237

Konsolunuz bir giriş kabuğu olarak çalışmıyor ve bu nedenle rvm işlevine erişimi yok. Ubuntu çalıştırıyorsanız, şunları yapabilirsiniz:

  1. Konsolu aç
  2. Düzenle -> Profil Tercihleri'ni seçin
  3. Sekme seç: Başlık ve Komut
  4. 'Komutu giriş kabuğu olarak çalıştır' onay kutusu
  5. Terminali yeniden başlat

1
Bunu yaptım ama işe yaramadı. Sorun devam ediyor. Rvm tamamen nasıl kaldırılır?
user3678471

16
Tabii ki ~ / .profile [[-s "$ HOME / .rvm / scriptler / rvm"]] && içinde aşağıdakilere ihtiyacınız olacak. "$ HOME / .rvm / komut dosyaları / rvm"
nadersoliman

3
Bunun daha fazla açıklanabileceğini düşünüyorum - "ve dolayısıyla rvm fonksiyonuna erişimi yok"
matanster

1
İşe yaradı. Bu ikisi arasındaki farkı söyleyebilir misin?
Krishnadas PC

6
OSX'te benim için ne işe yarıyor/bin/bash --login; source ~/.rvm/scripts/rvm; rvm use 2.4.0
Jayesh

116

Tip bash --loginsenin bilgisayarından. Ve sonra verrvm use 2.0.0


@AdityaPednekar Bu nedenle, bazen hata / konsol mesajını okumak gerçekten yardımcı olur, 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.ayrıntıları belirtir.
meraklı

Evet, rvmkarşılaştırıldığında ne kadar mantıksız karmaşık olduğunu anlamaya yardımcı olurnvm
Jannis Ioannou

53

RVM'niz ".bash_profile" dosyasını düzgün yüklemiyor gibi görünüyor. Terminal OS'yi açıp yazarak MAC OS X veya Ubuntu 14.04'te düzeltmeyi yaptım:

source ~/.rvm/scripts/rvm

41

Envim OSX Yosemite. Aynı sorunu vardı .... aşağıdaki ekleyerek çözüldü

1) aşağıdaki satırı düzenleyip .bash_profile dosyasına ekleyin .

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

2) Terminali yeniden başlatın ve RVM komutunu tekrar deneyin


2
Bunu ~ / .bashrc veya ~ / .zshrc'ye (zsh kullanıyorsanız) da ekleyebilirsiniz.
adridev

Terminali yeniden istemiyorsanız veya yeniden başlatamıyorsanız, düzenledikten source ~/.bash_profilesonra çalıştırabilirsiniz .
Andre Ravazzi

35

Terminali her açtığınızda bunu istemiyorsanız, yukarıdaki öneriyi tekrar yapın,

source ~/.rvm/scripts/rvm

sonunda ~/.bashrc


Bu yardımcı oldu.
Arup Rakshit

.. ve yeniden başlatmaya mı ihtiyacınız var?
gordie

16

Hata, rvm'nin oturum açma kabuğunda olduğu gibi çalışmamasından kaynaklanıyor. Bu nedenle aşağıdaki komutu deneyin:

/bin/bash --login

Rvm komutlarını terminalde oturum açma kabuğu olarak anında çalıştırabilirsiniz.

Teşekkürler!


15

Diğer cevaplarla aynı prensip, sadece terminalleri yeniden açmaktan daha hızlı olduğunu düşündüm :)

bash -l -c "rvm use 2.0.0"

Birisi tüm bunlardan daha iyi bir cevap bulmalıdır. Bu sorunun tüm cevaplarında benim için çalışan tek madde bu, ama bu her zaman yapmak istediğim bir şey değil. Mac OSX Sierra'dayım
djangofan

9

Sen eklemeniz gerekir source ~/.rvm/scripts/rvmiçin ~/.your_shellrc file. Artık bir kabuk yüklediğinizde rvm yüklenecek.

Örneğin:

zsh shell kullanıyorsanız, ~/.zshrcdosyaya eklemeniz gerekir

Eğer bash kabuğu kullanıyorsanız, ~/.bashrcdosyaya eklemeniz gerekir

Ardından efekti görmek için yeni bir sekme açın.


7

Benim için Ubuntu'da (18.08), .bashrc'de aşağıdaki satırı ekledim ve işe yarıyor.

 source /home/username/.rvm/scripts/rvm

Lütfen bu satırı ekleyin.


1
Teşekkürler! Bu benim için MacOS'ta çalıştı! Bir öneri olarak, ~kullanıcının ev yoluna başvurmak için kullanmanın daha iyi olduğunu düşünüyorum : source ~/.rvm/scripts/rvm:-)
Giovanni Benussi

2

Yeni bir Ubuntu 16.04 Kurulumundan

1) Terminal => Düzenle => Profil Tercihleri

2) Komut Sekmesi => Bir giriş kabuğu olarak Çalıştır komutunu kontrol et

3) Terminali kapatın ve yeniden açın

rvm --default use 2.2.4

0

FWIW- Ben de bununla karşılaştım, iptal edilmiş bir selenyum çalışması bağlamındaydı. Belki de somutlaştırılan ve yerinde bırakılan bir alt kabuk vardı. Bu terminal penceresini kapatmak ve yeni bir pencere açmak tek yapmam gereken şeydi. (macOS Sierra)

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.