我創建了一個定義Rails::Railtie
的寶石。 一切都按預期工作,除了我必須在我的application.rb
中包含寶石(lib/gem.rb
)的主文件,以便它被執行。自動需要寶石
有沒有辦法自動做到這一點? 我檢查了一些寶石,但我無法弄清楚如何。
我創建了一個定義Rails::Railtie
的寶石。 一切都按預期工作,除了我必須在我的application.rb
中包含寶石(lib/gem.rb
)的主文件,以便它被執行。自動需要寶石
有沒有辦法自動做到這一點? 我檢查了一些寶石,但我無法弄清楚如何。
解決了它。
我的寶石的名字是從文件的名稱(gem-name
VS lib/gem_name.rb
)略有不同,所以我必須把這個給我Gemfile
:
gem 'gem-name', require: 'gem_name'
我相信,如果您將寶石名稱更改爲gem_name,則不需要在此處指定:require:'gem_name''。 – Surya 2014-10-11 19:46:14
我不確定,但這可能有所幫助:http://guides.rubygems.org/patterns/#consistent-naming和http://guides.rubygems.org/name-your-gem/瞭解文件命名約定紅寶石。 – Surya 2014-10-11 19:48:58
啊我明白了。這應該意味着我也可以把我的gem文件放在''lib/gem/name.rb''上,它應該可以工作。 Ima試試看 – tonekk 2014-10-11 19:52:32
是在你的負載路徑的lib目錄? – Max 2014-10-11 19:39:25
當你說:'gem'gem_name'' Rubygems將它注入到你的require鏈中。現在,你要加載的gem文件應該是'gem_name/lib/gem_name.rb'你確定你已經遵循了這個結構嗎? – Surya 2014-10-11 19:40:25
完全是這個問題。 – tonekk 2014-10-11 19:43:08