2015-06-25 276 views
1

我正在一個紅寶石寶石,我得到一個奇怪的錯誤。我以前發佈這個寶石沒有太多的麻煩。我添加了一些方法/重構了一些代碼,並希望發佈後續版本(從1.1到1.2)。需要在紅寶石寶石錯誤

作爲參考,寶石的名稱是Intervallum,(拉丁語中的「間隔」一詞)。

我得到一個'要求'的錯誤,一直在困我。

文件夾樹是:

. 
├── Gemfile 
├── LICENSE 
├── README.md 
├── intervallum-[version].gem 
├── intervallum.gemspec 
└── lib 
    ├── intervallum 
    │   ├── module.scroll.rb 
    │   └── module.spell.rb 
    └── intervallum.rb 

lib/intervallum.rb我試過Dir.globDir['./lib/intervallum/*']require '../intervallum/lib/intervallum/module.spell.rb'會發生什麼,爲每一個是:

本地,gem build intervallum.gemspecgem install intervallum-[version].gem後,我啓動irbrequire intervallum它工作正常。

  • 推到RubyGems的
  • 刪除本地副本
  • 從RG安裝
  • 負載了在IRB我得到加載錯誤或無法找到類輔助類

我的米不知道爲什麼這種情況繼續發生,或者如果有什麼我不知道爲什麼這種情況持續發生,但任何建議將不勝感激。

回答

0

問題是,當它被打包時,您不會將這些文件包含在gem中。你gemspec指定只lib/intervallum.rb文件將被包含在寶石:

s.files = ["./lib/intervallum.rb"] 

更改該行以包括lib中的所有文件。包含gemspec也是一個好主意。

s.files = Dir['lib/**/*', 'intervallum.gemspec'] 
+0

今天早上去工作了...想出了完全一樣的東西......謝謝 –