2012-03-23 21 views
0

爲什麼我會在嘗試執行本地創建的gem安裝時遇到此錯誤。注意:我不想公佈出來互聯網上,只是用它自己內部:在本地創建寶石的gem時我創建了一個「無法解析依賴關係」?

MacBook-Pro:$ sudo gem install ./mylibrary-0.1.0.gem 
ERROR: While executing gem ... (Gem::DependencyError) 
    Unable to resolve dependencies: mylibrary requires yaml (>= 0), erb (>= 0), date (>= 0), net/smtp (>= 0) 

的gemspec的關鍵部分是:

Gem::Specification.new do |s| 
    s.add_dependency('yaml') 
    s.add_dependency('erb') 
    s.add_dependency('mechanize') 
    s.add_dependency('date') 
    s.add_dependency('json') 
    s.add_dependency('net/smtp') 
    s.add_dependency('mail') 
end 

旁白:就目前而言,我還是留下在我的ruby文件中需要'yaml'「行。我不確定當我成功地將它安裝到本地時,我是否應該使用我的寶石。

回答

3

更正了此問題與madth3的輸入。

yaml,日期,erb和net/smtp不是寶石。刪除這些作爲依賴關係,你應該很好去。

Gem::Specification.new do |s| 
    s.add_dependency('mechanize','~> 2.3') 
    s.add_dependency('json',  '~> 1.6.5') 
    s.add_dependency('mail',  '~> 2.4.4') 
end 
+0

第二部分是正確的,那些(yaml,日期等)不是寶石,因此不能像這樣安裝。他們應該從gemspec中刪除。 – madth3 2012-03-23 00:33:08

+0

第二部分修復它(不需要添加版本) – Greg 2012-03-23 01:20:37

相關問題