0
由於我公司的IT需求,任何需要編譯的gem都必須由IT工程師安裝,並且任何純ruby gems都會安裝到項目的子文件夾中。爲了滿足這些需求,我們分隔我們的寶石成不同的羣體:Bundler:迫使它從兩個不同的目錄加載
source 'http://rubygems.org'
gem 'rails', '3.0.0'
gem 'activerecord-oracle_enhanced-adapter', '~> 1.3.1'
gem 'memcache-client', :require => 'memcache'
gem 'builder'
gem 'acts_as_list'
group :development, :test do
gem 'sqlite3-ruby', :require => 'sqlite3'
gem 'ruby-debug19', :require => 'ruby-debug'
end
group :native do
gem 'ruby-oci8'
gem 'nokogiri'
end
當我們安裝我們在測試服務器上運行此命令,我們運行bundle install --without native
這正確安裝紅寶石唯一版本的寶石。此後,構建服務器修改從這個
---
BUNDLE_PATH: vendor/bundle
BUNDLE_WITHOUT: development:native
BUNDLE_DISABLE_SHARED_GEMS: "1"
的.bundle /配置文件,這
---
BUNDLE_PATH: vendor/bundle
BUNDLE_WITHOUT: development
然而,它仍然無法正常加載寶石:
timetips1- lm27:〜/ ka $ ./script/rails c tii_test
在任何來源找不到ruby-oci8-2.0.4
嘗試運行bundle install
。
我一直在通過源代碼搜尋,試圖找到一種方法來強制Bundler使用正常的加載路徑,但真的出現和短,我的腦子從盯着源代碼兩天的油炸。有關如何解決該問題的任何想法?