Ответы:
Да, когда вы это сделаете gem install
, он сначала будет искать текущий каталог, поэтому, если ваш файл .gem будет там, он его подберет. Я нашел его в справочнике по драгоценным камням , который также может пригодиться вам:
gem install установит названный гем. Он попытается выполнить локальную установку (т. Е. Файл .gem в текущем каталоге), а если это не удастся, он попытается загрузить и установить самую последнюю версию нужного вам гема.
Gemfile
но не .gem
файл. Так что же это за .gem
файл? Что это должно содержать? - Подожди, я вижу. Вы имеете в виду gem-name.gem
файл. Помните, что в Unix вполне нормально иметь файл, начинающийся с '.' так что лучше разобраться.
Также вы можете использовать gem install --local path_to_gem/filename.gem
Это пропустит обычное сканирование хранилища гемов, которое происходит, когда вы уходите --local
.
Вы можете найти другую магию с gem install --help
.
Если вы создаете свои драгоценные камни с помощью bundler:
# do this in the proper directory
bundle gem foobar
Вы можете установить их с помощью rake после того, как они написаны:
# cd into your gem directory
rake install
Скорее всего, ваш загруженный драгоценный камень будет знать rake install
тоже.
Если вы хотите работать над локально измененным форком гема, лучший способ сделать это
gem 'pry', path: './pry'
в Gemfile.
... где ./pry
будет клон вашего хранилища. Просто запустите bundle install
один раз, и любые изменения в источниках драгоценных камней, которые вы делаете, будут немедленно отражены. С gem install pry/pry.gem
источниками все еще перемещаются, GEM_PATH
и вам всегда придется запускать оба bundle gem pry
и gem update
тестировать.
Идите по пути, где находится драгоценный камень, и назовите gem install -l gemname.gem
Ну, это моя СУХАЯ установка:
[Ruby Installation version]/lib/ruby/gems/[Ruby version]/cache
)*.gems
файлы» на компьютер без драгоценных камней в собственном месте кеша драгоценных камней (по умолчанию тот же путь патрона первого шага:[Ruby Installation version]/lib/ruby/gems/[Ruby version]/cache
)[Ruby Installation version]/lib/ruby/gems/[Ruby version]/cache
) и запустить gem install anygemwithdependencieshere
(на примере cucumber-2.99.0
)Это СУХО, потому что после установки любого драгоценного камня, по умолчанию rubygems помещает файл драгоценного камня в каталог драгоценного камня кэша и не имеет смысла дублировать эти файлы, это будет проще, если вы хотите, чтобы оба компьютера имели одинаковые версии (или были заблокированы параноичными правилами безопасности: v)
Редактировать: в некоторых версиях ruby или rubygems, они не работают и выдают оповещения или ошибки, вы можете поместить драгоценные камни в другое место, но не получить DRY, другой альтернативой является использование встроенной команды запуска
gem server
и добавление url localhost в источники драгоценных камней, более информация в: https://guides.rubygems.org/run-your-own-gem-server/
Вы можете скачать драгоценные камни с https://rubygems.org/gems/ или собрать свой местный драгоценный камень через связку и стойку.
например:
Позаботьтесь об установке зависимостей перед установкой реальных гемов.
Примечание: если вы используете fluentd td-agent и ruby на одной машине. Пожалуйста, убедитесь, что используете команду td-agent-td-agent-gem. тд-агент имеет собственный рубин.