2016-08-12 33 views
7

Używam hamulca poza moją Gemfile, więc nie używam bundler.Jak uruchomić konkretną wersję rubinowego klejnotu

Jeśli robię gem list widzę, mam następujące dla hamulcowego

brakeman (3.3.3, 3.3.2, 3.1.4, 3.1.2) 

Ale jeśli to zrobię brakeman --version, mam

brakeman 3.1.2 

więc nie używam najnowszej wersji. Jeśli robię gem update brakeman lub

gem update brakeman, '3.3.3, 

uzyskać

Updating installed gems 
Nothing to update 

Więc jak mam uruchomić hamulcowego wersji 3.3.3?

Odpowiedz

3

nie mogę odtworzyć ten problem, ale myślę, że z kilku powodów, dlaczego to może się zdarzyć:

  • Bundler artefakty (być może w .bundle/) wskazując na starszą wersję. Spróbuj uruchomić w innym katalogu i zobaczyć, czy to nadal zdarza
  • błąd w RubyGems (spróbuj gem update --system)
  • podczas instalacji, to pytanie, czy chcesz zastąpić brakeman binarny i wybrano opcję „nie”
  • Jeśli używasz menedżera wersji Ruby, może jedna wersja jest na innej ścieżce niż inny (jak klejnot systemu kontra jeden zarządzany przez rvm)
  • dowolną liczbę GEM_PATH, bundler, gem, rvm tajemniczości, że czasami występuje

W każdym razie, gdybym był tobą, usunąłbym wszystkie wersje i zainstalowałbym się świeżo. Jeśli używasz rvm, zacznij od nowego gemsetu lub od bieżącego rvm gemset empty.

+0

To jest opcja jądrowa, ale powinna działać.Używam rvm. Spróbuję. – Obromios

+0

To zadziałało, dziękuję. – Obromios

-2
$ gem install brakeman -v 3.3.3 

następnie w Gemfile (zakładając, że masz jeden) punkt do tej konkretnej wersji, jak:

"brakeman", "~> 3.3.3" 
9

Jeśli zainstalowano kilka wersji gem i chcesz wywołać konkretną wersję z polecenia -line, można użyć:

brakeman _3.3.3_ [args go here] 

ta nie jest specyficzna dla hamulcowego, można to zrobić dla większości innych kamieni szlachetnych, jak również.

+0

Jeśli robię '' 'brakeman _3.3.3_ --version''' to nadal zwraca wartość 3.1.2, więc czy naprawdę działa 3.3.3? – Obromios

+0

Hmm, to dziwne. Jaka jest twoja produkcja 'który hamulec'? – awendt

+1

Próbowałem tego w innym systemie i to działa. Musi być coś dziwnego w mojej instalacji hamulcowej. Przegłosowałem twoją odpowiedź. – Obromios