1055 Stimmen

Ruby: Wie installiert man eine spezifische Version eines Ruby-Gems?

Mit dem Befehlszeilen-gem-Tool, wie kann ich eine bestimmte Version eines Gems installieren?

14voto

Mael Stor Punkte 141

Sie können die -v oder --version Flagge verwenden. Zum Beispiel

gem install bitclock -v '< 0.0.2'

Um obere UND untere Versionsgrenzen anzugeben, können Sie die --version Flagge zweimal angeben

gem install bitclock -v '>= 0.0.1' -v '< 0.0.2'

oder verwenden Sie die Syntax (zum Beispiel)

gem install bitclock -v '>= 0.0.1, < 0.0.2'

Der andere Weg ist

gem install bitclock:'>= 0.0.1'

aber mit der letzten Option ist es nicht möglich, obere und untere Grenzen gleichzeitig anzugeben.

[gem 3.0.3 und ruby 2.6.6]

7voto

kenorb Punkte 134883

Linux

Um verschiedene Versionen von Ruby zu installieren, überprüfen Sie die neueste Version des Pakets mit apt wie folgt:

$ apt-cache madison ruby
      ruby |    1:1.9.3 | http://ftp.uk.debian.org/debian/ wheezy/main amd64 Packages
      ruby |        4.5 | http://ftp.uk.debian.org/debian/ squeeze/main amd64 Packages

Dann installieren Sie es:

$ sudo apt-get install ruby=1:1.9.3

Um die aktuelle Version zu überprüfen, führen Sie aus:

$ gem --version # Überprüfen Sie für den aktuellen Benutzer.
$ sudo gem --version # Globale Überprüfung.

Wenn die Version immer noch alt ist, können Sie versuchen, die Version mit dem Ruby Version Manager (rvm) zu wechseln, indem Sie folgendes verwenden:

rvm 1.9.3

Hinweis: Sie können es mit sudo voranstellen, wenn rvm global installiert wurde. Oder führen Sie /usr/local/rvm/scripts/rvm aus, wenn Ihr Befehl rvm nicht in Ihrem globalen PATH ist. Wenn die rvm-Installationsprozess fehlschlägt, sehen Sie den Abschnitt zur Fehlerbehebung.


Fehlerbehebung:

  • Wenn Sie immer noch die alte Version haben, können Sie versuchen, rvm (Ruby Version Manager) wie folgt zu installieren:

    sudo apt-get install curl # Zuerst curl installieren
    curl -sSL https://get.rvm.io | bash -s stable --ruby # Nur für den Benutzer installieren.
    #oder:# curl -sSL https://get.rvm.io | sudo bash -s stable --ruby # Global installieren. 

    dann, wenn lokal installiert (nur für den aktuellen Benutzer), laden Sie rvm über:

    source /usr/local/rvm/scripts/rvm; rvm 1.9.3

    wenn global (für alle Benutzer), dann:

    sudo bash -c "source /usr/local/rvm/scripts/rvm; rvm 1.9.3"
  • wenn Sie weiterhin Probleme mit der neuen Ruby-Version haben, versuchen Sie, sie mit rvm wie folgt zu installieren:

    source /usr/local/rvm/scripts/rvm && rvm install ruby-1.9.3 # Lokal.
    sudo bash -c "source /usr/local/rvm/scripts/rvm && rvm install ruby-1.9.3" # Global.
  • wenn Sie einige Gems global installieren möchten und rvm bereits installiert haben, können Sie Folgendes versuchen:

    rvmsudo gem install [gemname]

    anstatt von:

      gem install [gemname] # oder:
      sudo gem install [gemname]

Hinweis: Es ist empfehlenswert, kein sudo für die Arbeit mit RVM-Gems zu verwenden. Wenn Sie sudo verwenden, führen Sie Befehle als Root, einen anderen Benutzer in einer anderen Shell aus, und daher werden alle Einrichtungen, die RVM für Sie gemacht hat, ignoriert, während der Befehl unter sudo ausgeführt wird (solche Dinge wie GEM_HOME usw....). Also, um zu wiederholen, sobald Sie 'sudo' verwenden, führen Sie als Root-Benutzer aus, was Ihre Umgebung genauso löscht wie alle Dateien, die von Ihrem Benutzer erstellt werden, nicht von Ihrem Benutzer modifiziert werden können und zu merkwürdigen Ereignissen führen.

0voto

Gayan Weerakutti Punkte 8759

Vor der Installation können Sie die verfügbaren Versionen mit dem Befehl list überprüfen.

gem list ^[gemname]$ --remote --all
gem install [gemname] -v [version]

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X