Скачать все зависимости гемов - PullRequest
25 голосов
/ 09 декабря 2010

Я хочу установить компас, загрузив все необходимые файлы и перенеся их на другую машину без подключения к Интернету . Я скачал исходный пакет для компаса, и когда я запускаю gem на нем на неподключенном компьютере, он жалуется на отсутствие зависимостей. Любое решение?

Ответы [ 3 ]

41 голосов
/ 16 февраля 2012

Это именно та проблема, с которой я столкнулся.
Пройдя поиск, я нашел решение, которое работает с помощью Bundler https://bundler.io/

Получение драгоценного камня с зависимостями:

  • Создатьновая папка с файлом Gemfile.
  • Запишите источник и гем, для которого вы хотите иметь зависимости, в файл
  • Bsp:

    source "http://rubygems.org"
    гем 'rails', '3.2.1'

  • Открыть командную строку в этой папке Выполнить: установка пакета
  • Это должно загрузить и установить все Dependencys
  • Выполнить команду список пакетов , если вы хотите его увидеть
  • Выполнить команду пакет пакета
  • Это должно создать структуру каталога vendor / cache
  • Внутри кеша Directory теперь находятся все Dependencys, необходимые для вашего гема

Установить Gem на Машину без подключения к интернету:

  • Копирование папки кэша на компьютер
  • Откройте командную строку внутри папки кэша и выполните gem install --local Gemname.gem
  • Bsp:

    gem install --local rails-3.2.1.gem

4 голосов
/ 29 сентября 2012

Я сделал

export GEM_HOME=.
export GEM_PATH=.
gem install --no-ri --no-rdoc --install-dir . <gem>
3 голосов
/ 10 декабря 2010

Hm.Это немного сложно.gem dependency покажет вам зависимости для одного драгоценного камня, но он не пройдет весь путь вниз по дереву.

➔ 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)

«развитие» означает, что это требуется только в том случае, если вы разрабатываете сам камень.«время выполнения» означает, что вам нужно его использовать.

, поэтому в данном случае единственной зависимостью является haml.если бы это был более сложный камень, я не знаю хорошего способа создать целое дерево.

...