2017-03-16 44 views
8

Używam poleceniaKonto użytkownika nie wolno instalować w systemie RubyGems

bundle install 

w folderze projektu. W niektórych folderach projektu wygeneruje błąd, aw innych folderach projektów nie spowoduje błędu. Błąd jest:

Konto użytkownika nie wolno instalować na RubyGems systemowych

Wiem, że to może być ustalona przez następujące zalecanej porady:

bundle install --path vendor/bundle 

Moje pytanie brzmi: dlaczego zachowanie jest niespójne?

+0

także zauważam że Travis CI uruchamia dokładnie polecenie 'bundle install --jobs = 3 --retry = 3', ale faktycznie niejawnie instaluje się w 'vendor/bundle' jak na https://docs.travis-ci.com/user/languages/ruby/#Default-Test-Script –

Odpowiedz

2

Zazwyczaj jeśli używasz RVM, rbenv lub chruby zainstalować Ruby, wszystkie kamienie zostaną zainstalowane w katalogu domowym pod ~/.rbenv/ruby-version/...

Jeśli używasz systemu Ruby chociaż (ten, który jest zainstalowany domyślnie) klejnoty są instalowane obok niego w lokalizacji, do której nie masz dostępu bez numeru sudo.

Domyślam się, że menedżer Twojej wersji domyślnie stosuje system Ruby, ale niektóre z twoich projektów zawierają plik .ruby, który mówi, że używa innej wersji Ruby, do której masz dostęp.

0

W moim przypadku, miałem istniejący $BUNDLE_PATH bez wystarczających uprawnień użytkownika Bundler pisać.

Your user account isn't allowed to install to the system RubyGems 
bundle install --path vendor/bundle 
-1

Usuń

sudo mv ~/.bundle /tmp 

Spróbuj ponownie zainstalować

bundle install 
+0

Nie daje to odpowiedzi na pytanie. Aby skrytykować lub poprosić o wyjaśnienie od autora, pozostaw komentarz pod swoim postem. - [Z recenzji] (/ opinia/niskiej jakości-posts/19033999) –