Question

Je veux installer Compass en téléchargeant n'importe quel fichier requis et en les emmenant dans une autre machine sans connexion Internet. J'ai téléchargé le package source pour Compass et lorsque j'exécute Gem dessus dans la machine non connectée, il se plaint des dépendances manquantes. Toute solution?

Était-ce utile?

La solution

C'est exactement le problème que j'avais.
Après avoir cherché un certain temps, j'ai trouvé une solution qui travaille en utilisant Bundler https://bundler.io/

Obtenir des gemmes avec les dépendances:

  • Créez un nouveau dossier avec un fichier nommé Gemfile.
  • Écrivez une source et la gemme pour laquelle vous souhaitez avoir les dépendances dans le fichier
  • BSP:

    la source "http://rubygems.org"
    Gem 'rails', '3.2.1'

  • Ouvrez une ligne de commande dans ce dossier et exécutez: Installation du paquet
  • Cela devrait télécharger et installer tous les dépendances
  • Exécuter la commande liste de bornes Si tu veux le voir
  • Exécuter la commande forfait
  • Cela devrait créer le fournisseur / cache de structure de répertoire
  • À l'intérieur du répertoire de cache se trouvent désormais toutes les dépendances dont vous avez besoin pour votre gemme

Installez le gemme sur la machine sans connexion Internet:

  • Copiez le dossier de cache sur la machine
  • Ouvrez une ligne de commande dans le dossier de cache et exécutez GEM INSTALLATION - Local gemmame.gem
  • BSP:

    Installation de gemmes - Local Rails-3.2.1.gem

Autres conseils

Je l'ai fait

export GEM_HOME=.
export GEM_PATH=.
gem install --no-ri --no-rdoc --install-dir . <gem>

Hm. C'est un peu difficile. gem dependency vous montrera les dépendances pour un joyau, mais cela ne passera pas tout le long de l'arbre.

➔ gem dependency compass
Gem compass-0.10.5
  haml (>= 3.0.4, runtime)

Gem compass-0.10.6
  haml (>= 3.0.4, runtime)

➔ gem dependency haml   
Gem haml-3.0.21
  maruku (>= 0.5.9, development)
  yard (>= 0.5.3, development)

Gem haml-3.0.22
  maruku (>= 0.5.9, development)
  yard (>= 0.5.3, development)

Gem haml-3.0.23
  maruku (>= 0.5.9, development)
  yard (>= 0.5.3, development)

Gem haml-3.0.24
  maruku (>= 0.5.9, development)
  yard (>= 0.5.3, development)

Le «développement» signifie qu'il n'est requis que si vous développez le gemme lui-même. "Runtime" signifie que vous en avez besoin pour l'utiliser.

Donc, dans ce cas, la seule dépendance est HAML. S'il s'agissait d'un joyau plus compliqué, je ne connais pas un bon moyen de générer l'arbre entier.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top