2012-07-19 40 views
0

我有一個Gemfile作爲rails應用程序的一部分,我將其轉換爲gem。如何編寫Gemspec,當寶石的主類名稱不同時?

gem "jruby-openssl", "0.7.4" 
gem "nokogiri" 
gem 'xml-simple', :require => 'xmlsimple' 
gem "httpclient" 

我怎樣寫的.gemspec文件,我從這個創造寶石? 我寫的gemspec看起來像這樣。

Gem::Specification.new do |s| 
    s.name = "my_gem" 
    s.platform = Gem::Platform::RUBY 
    s.authors  = [""] 
    s.email  = [""] 
    s.homepage = "" 
    s.summary  = %q{MyGem} 
    s.description = %q{MyGem} 
    s.files = Dir["{app,lib,config,public,db}/**/*"] + ["Rakefile", "Gemfile"] 

    s.require_paths = ["lib"] 
    s.add_dependency 'nokogiri', '>= 1.5.0' 
    s.add_dependency('xml-simple') 
    s.add_dependency 'httpclient' 
end 

然而,xmlsimple對象不叫,因爲,附加依賴不能採取相同的參數作爲一個普通寶石的呼叫。 如何編寫gemspec來調用xmlsimple,就像它在Gemfile中完成一樣?

回答

1

你可以這樣做:

s.add_dependency 'xml-simple' 

就像你已經。要求你的應用程序內的庫然而,當(也許裏面lib/yourgem.rb)你這樣做:

require 'xmlsimple' 

相反的:

require 'xml-simple' 

我發現,使用XML的簡單這可能是你的參考價值的瑰寶。 https://github.com/stjohncj/RESTRack

相關問題