2017-04-27 162 views
0

我想創建一個具有一些依賴關係的gem。我跟着一個教程,here是完整的代碼。Gemspec解析依賴關係

s.add_dependency "sinatra" 

在gemspec。我建立了寶石。當我試圖用

gem install --local gemname.gem 

安裝我

ERROR: Could not find a valid gem 'sinatra' (>= 0) in any repository

我,而不是預期gem install將首先安裝西納特拉,然後用我的寶石進行。

如何在我的寶石之前安裝任何依賴關係?我想:

  • 添加gem 'sinatra'到Gemfile中
  • 我gemspec文件

回答

0

TL的頂部使用add_runtime_dependency代替add_dependency

  • require 'rubygems'; DR:

    gem install gemname.gem # NO --local switch 
    

    當給定的,--local限制所有的行動,以地域,可以清楚地寫在gem help install輸出:

    Local/Remote Options:

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

    這就是說,上面會成功,當且僅sinatra當地已經可用。

  • +0

    我以爲'--local'被用來指定本地文件的路徑。謝謝,你不知道我被困在這裏多少時間了!我愛你! – user7930453