Gemspec разрешает зависимости

Я хотел создать гем с некоторыми зависимостями. Я следовал руководству, вот полный код.

у меня есть

s.add_dependency "sinatra"

В гемспец. Я создаю драгоценный камень. Когда я попытался установить его с помощью

gem install --local gemname.gem

я получил

ОШИБКА: не удалось найти допустимый гем «sinatra» (>= 0) ни в одном репозитории.

Вместо этого я ожидал, что gem install сначала установит sinatra, а затем приступит к работе с моим gem.

Как я могу заставить его устанавливать любые зависимости до моего драгоценного камня? Я пытался:

  • добавить gem 'sinatra' в гемфайл
  • используйте add_runtime_dependency вместо add_dependency
  • require 'rubygems' поверх моего файла gemspec

person user7930453    schedule 27.04.2017    source источник


Ответы (1)


TL;DR:

gem install gemname.gem # NO --local switch

При задании --local ограничивает все действия локальным доменом, как ясно написано в выводе gem help install:

Локальные/удаленные параметры:

-l, --local                      Restrict operations to the LOCAL domain

Тем не менее, вышеуказанное будет выполнено успешно, если и только sinatra уже доступно в локальной сети.

person Aleksei Matiushkin    schedule 27.04.2017
comment
Я думал, что --local используется для указания пути к локальному файлу. Спасибо, вы не представляете, сколько времени я застрял на этом! Я тебя люблю! - person user7930453; 27.04.2017