gem установить XYZ локально (без подключения к интернету) - PullRequest
4 голосов
/ 21 января 2011

Мне нужно установить win32-api и antlr3 на компьютер без подключения к интернету.Если бы у меня было такое соединение, я бы использовал gem примерно так:

gem install win32-api -r
gem install antlr3 -r

Это, очевидно, не сработает.Итак, я подумал, что должен быть способ загрузить gem и установить его позже, но я не уверен, как мне поступить.

Я нашел оператор gem which, который выглядел какчтобы указать локальное местоположение драгоценного камня:

c:\>gem which antlr3
c:/tools/Ruby187/lib/ruby/gems/1.8/gems/antlr3-1.8.8/lib/antlr3.rb

, однако, он не работал на win32-api:

c:\>gem which win32-api
ERROR:  Can't find ruby library file or shared library win32-api

, хотя я уже установил его.

Может ли кто-нибудь намекнуть в правильном направлении, чтобы продолжить отсюда?

Ответы [ 3 ]

9 голосов
/ 21 января 2011

Попробуй,

gem install --local path / to / file.gem

1 голос
/ 27 ноября 2014

У меня были некоторые проблемы с этим на виртуальной машине.У виртуальной машины преднамеренно не было доступа к Интернету (машина тестирования sneaker-net), но у нее все еще были настроены некоторые DNS-серверы.

Например:

$ gem install bundler-1.7.7.gem --local
ERROR:  While executing gem ... (Errno::ENETUNREACH)
    Network is unreachable - sendto(2) for "192.168.1.10" port 53

192.168.1.10 - это DNS-сервер, которыйVirtualBox настроен.Так что я должен был закомментировать /etc/resolv.conf с;в начале всех строк.Даже уход в Google DNS сломал бы его.

; /etc/resolv.conf
nameserver 8.8.8.8  ; nope.  gem install --local doesn't like it
; You will get a Network is unreachable - sendto(2) for "8.8.8.8" port 53

Если вы закомментируете весь файл /etc/resolv.conf, тогда вы можете установить гемы локально (из файла).

$ gem install bundler-1.7.7.gem --local
Successfully installed bundler-1.7.7
Parsing documentation for bundler-1.7.7
Installing ri documentation for bundler-1.7.7
Done installing documentation for bundler after 4 seconds
WARNING:  Unable to pull data from 'https://rubygems.org/': no such name (https://rubygems.org/specs.4.8.gz)
1 gem installed

Версия Ruby Gems: 2.4.4 на Ruby 2.1.5.

0 голосов
/ 21 января 2011

gem будет сначала смотреть в текущем каталоге после .gem файлов. Попробуйте загрузить .gem файлы драгоценных камней, которые вы хотите установить, на компьютер с подключением к Интернету (и не забывайте о зависимостях), затем переместите файлы на другой компьютер и запустите gem install xyz в том же каталоге, где вы поместил .gem файлы.

...