3

我使用 Ruby 1.9.3-p374 安装了 rbenv,并且我安装了 gem 捆绑器。

然后我设置了一个项目目录并在其中设置了一个 .ruby-version 文件以选择我的 1.9.3 ruby​​ 版本,然后添加了一个带有一些 gem 的 gemfile,如指南针等。然后我运行bundle install --path vendor并安装了它。

如果我然后运行,bundle show我会得到这个:

Gems included by the bundle:
  * bundler (1.2.3)
  * chunky_png (1.2.7)
  * compass (0.12.2)
  * fssm (0.2.10)
  * sass (3.2.5)
  * susy (1.0.5)

如果我跑步,gem list我会得到这个:

*** LOCAL GEMS ***

bigdecimal (1.1.0)
bundler (1.2.3)
io-console (0.3)
json (1.5.4)
minitest (2.5.1)
rake (0.9.2.2)
rdoc (3.9.4)

我如何让他们一起工作。我希望像 compass 等本地项目 gem 像它们一样安装到供应商目录中,但是当我 cd 进入我的项目目录并运行 compass watch 命令时,我得到-bash: compass: command not found

为什么它不起作用?

4

1 回答 1

2

从您的供应商包(而不是本地 gem)运行 gem 时,您应该使用bundle exec

~/project$ bundle exec compass watch

If you want to run Compass directly, you'll have to install it on your system (local gems) using either vanilla bundle install or simply gem install compass. (In that case, you might sometimes run into a conflict of gem versions, Gemfile vs. called from system)

于 2013-01-30T20:01:22.880 回答