Frage

gibt es etwas ruby-code, den ich verwenden kann, installieren Sie einen Edelstein aus einer lokalen Datei, wenn das Juwel ist nicht installiert?

ich denke, es würde ungefähr so Aussehen:

if !gem_installed("some gem name")
  system "gem install -l local_copy.gem"
end

ich weiß nicht, ob alles vorhanden ist, können Sie mich überprüfen für Perlen wie diese-oder auch nicht...

War es hilfreich?

Lösung

Die Prüfung der Verfügbarkeit ist in dieser vorherigen StackOverflow-Frage

begin
  gem "somegem"
  # with requirements
  gem "somegem", ">=2.0"
rescue Gem::LoadError
  # not installed
end

oder

matches = Gem.source_index.find_name(gem.name, gem.version_requirements)

Wie für die Installation, es sieht aus wie rails nutzt das system für gem install auch

 puts %x(#{cmd})
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top