2014-06-26 24 views
0

我的系统上安装了SASS gem(v3.3.8),但我有一个需要v3.2.19的项目)。我也有一种情况,系统与v3.2.19 exsiting存在冲突(如果安装了任何旧版本的gem,Codekit将不编译SASS)。如何在我的项目中使用Ruby Gem文件,而不是系统中安装的Gem?

我用捆扎机到所需的宝石的文件夹中的本地副本安装到我的项目:

my_project/src/vendor/bundle/ruby/...

我怎么能强迫我的项目中使用了红宝石的宝石在本地文件夹我的呼噜声任务,而不是我的系统上全局安装的那些?

# A sample Gemfile 
source "https://rubygems.org"  

gem 'autoprefixer-rails', ">=1.2.0.20140609" 
gem 'breakpoint', ">=2.0.7" 
gem 'compass', ">=0.12.6" 
gem 'sass', ">=3.2.19" 
gem 'singularitygs', ">=1.1.2" 
+2

在您的项目目录(Gemfile所在的位置)运行'bundle install',以'bundle exec ...'方式安装gems并启动可执行文件。 'bundle exec compass compile' – Stefan

+0

我已经运行了'bundle install --path vendor/bundle'。我尝试使用':path =>'来指向这些文件而不是系统文件,但无论我在“vendor/bundle”文件夹中看到的位置,我总是收到一条错误消息:'Could not find gem'compass (> = 0.12.6)ruby'in vendor/bundle/ruby​​/2.0.0/cache。 来源不包含任何版本的'指南针(> = 0.12.6)ruby''。 http://philsinatra.net/_ex/ss.png –

回答

0

bundle exec是正确的命令。