宝石没有通过捆绑安装来安装

时间:2014-01-23 14:21:15

标签: ruby-on-rails ruby ruby-on-rails-3 gem bundler

使用rvm gemset empty清除我的宝石后,我重新安装了rails(3.2.13),然后删除了我的Gemfile.lock并运行了bundle install。 Bundler没有安装宝石,它只是说它“使用”它们就好像它们已经安装好了一样。因此,当我尝试运行应用程序时,我被告知“无法在任何来源(Bundler :: GemNotFound)中找到[gem namne]”。

修改:我正在运行sudo bundle install,因为其中一个宝石是从本地源安装的。使用sudo时,未安装宝石。刚刚运行bundle install时,Bundler会尝试安装缺少的gem,但无法安装来自本地源的bootstrap-sass gem。

的Gemfile

source "https://rubygems.org"

gem "rails", "~> 3.2.13"
gem "mysql2", "~> 0.3.13"
gem "json", "~> 1.8.0"

group :assets do
  gem "guard-rails-assets", "~> 0.1.3"
  gem "sass-rails", "~> 3.2.6"
  gem "coffee-rails", "~> 3.2.2"
  gem "uglifier", "~> 1.0.3"
end

gem "jquery-rails", "~> 3.0.4"
gem "simple_form", "~> 2.1.0"
gem "bootstrap-sass", :path => "gems/bootstrap-sass-c0e12a90ba3e"
gem "client_side_validations", "~> 3.2.6"
gem "client_side_validations-simple_form", "~> 2.1.0"
gem "therubyracer", :platform => :ruby
gem "require_relative", "~> 1.0.3"
gem "icalendar", "~> 1.4.3"
gem "whenever", "~> 0.8.4", :require => false
gem "jquery-cookie-rails", "~> 1.3.1"
gem "hominid", "~> 3.0.5"

gem list

*** LOCAL GEMS ***

actionmailer (3.2.13)
actionpack (3.2.13)
activemodel (3.2.13)
activerecord (3.2.13)
activeresource (3.2.13)
activesupport (3.2.13)
arel (3.0.3)
builder (3.0.4)
bundler (1.5.2)
bundler-unload (1.0.2)
daemon_controller (1.1.8)
erubis (2.7.0)
executable-hooks (1.3.1)
gem-wrappers (1.2.4)
hike (1.2.3)
i18n (0.6.1)
journey (1.0.4)
json (1.8.1)
mail (2.5.4)
mime-types (1.25.1)
multi_json (1.8.4)
passenger (4.0.35)
polyglot (0.3.3)
rack (1.4.5)
rack-cache (1.2)
rack-ssl (1.3.3)
rack-test (0.6.2)
rails (3.2.13)
railties (3.2.13)
rake (10.1.1)
rdoc (3.12.2)
rubygems-bundler (1.4.2)
rvm (1.11.3.8)
sprockets (2.2.2)
thor (0.18.1)
tilt (1.4.1)
treetop (1.4.15)
tzinfo (0.3.38)

为什么bundle没有在我的Gemfile中安装宝石?

2 个答案:

答案 0 :(得分:2)

当你运行sudo bundle install时,你可能正在使用另一个bundler实例(要么你的系统全局安装了另一个RVM实例,要么你只是使用默认的系统ruby)

结果,它将为该系统ruby安装gem。如果您稍后在不使用sudo的情况下打开服务器,它将在您的本地RVM中查找没有 仅使用``bundle install进行安装是正确的方法。你应该做的是修复bootstrap-sass中的路径错误。顺便说一下,由于同样的问题,可能会发生这种情况 您的系统ruby中可能有路径"gems/bootstrap-sass-c0e12a90ba3e",但本地RVM上没有路径

答案 1 :(得分:1)

我想你应该把你的bootstrap-sass gem版本放在没有root权限的目录中。