Czy istnieje sposób na zainstalowanie klejnotu we wszystkich rubinach i klejnotach (nie tylko jako domyślny lub rubin systemowy) w systemie podczas korzystania z RVM?Jak zainstalować klejnot we wszystkich gemsetach podczas korzystania z RVM
Odpowiedz
Przeglądając dokumenty RVM, nie widzę sposobu, aby to zrobić specjalnie. Jednak możesz go przybliżać za pomocą kombinacji klejnotów @global i kopiowania gemsetów.
Globalne zestawy gemstone zapewniają kamienie szlachetne, które są dostępne dla wszystkich gemsetów danego rubinu. Np .:
rvm install 1.9.3
rvm --create [email protected]
rvm --create [email protected]
rvm use [email protected]
gem install sqlite3
by utworzyć dwa różne gemsets dla Ruby 1.9.3, a globalna sqlite3 byłyby dostępne w obu.
Następnie, gdy już to zrobisz, możesz skopiować globalny zestaw kamieni do innych rubinów, a oni sami go udostępnią. Na przykład, jako kontynuacja powyższego:
rvm install 1.8.7
rvm gemset copy [email protected] [email protected]
a obecnie także sqlite3 gem jest dostępna dla wszystkich 1.8.7 gemsets (zakładając, że mam argumenty w odpowiedniej kolejności - nie może w tym przypadku przełącznik 1.9.3 i 1.8.7). To nie jest całkiem idealne, ponieważ aktualizacje jednego rubinu nie stają się automatycznie widoczne w innych, musielibyśmy kopiować do każdego rubinu indywidualnie, i wyobrażam sobie, że skończyłoby się wyłamywać wszystkie zależne od rubinu klejnoty, które posiadasz skonfigurować w każdym. Jeśli ten ostatni punkt nie jest problemem, który można przewidzieć jako problem, prawdopodobnie można napisać skrypt, aby uniknąć nudności implikowanej przez pierwsze dwa punkty.
Nota prawna: Jest to ściśle związane z czytaniem w dokumentach RVM i nie wypróbowałem tego. Jeśli coś jest nie tak, chętnie edytuję odpowiedź, aby to naprawić.
można zainstalować do Domyślnie globalny gemset za rubinowym tłumacza jak wspomniano tutaj:
https://rvm.io/gemsets/global/
a także to strona wymienia domyślny gem ustawia
I wouldn” Przydadzą się instalowanie klejnotów dla wszystkich tłumaczy rubinowych z powodu niezgodności między rubinami.
można wykonać:
rvm @global do gem install [gem_name]
zainstalować gem globalnie (na wersji ruby).
Jest to niemożliwe, aby zainstalować klejnot na całym świecie dla każdej wersji ruby .
Zgodnie z https://rvm.io/gemsets/initial można zdefiniować automatycznie zainstalowane klejnoty dla każdej wersji ruby w pliku ~/.rvm/gemsets/global.gems
. W tym pliku musisz zdefiniować wymagane klejnoty (po jednym w linii), np.
bundler
zeus
Te klejnoty zostaną zainstalowane za każdym razem, gdy dodasz nową wersję ruby do RVM.