2012-02-16 82 views
0

我是新来的Rails。我安装了Rails正常,但如果我增加额外的宝石到Gemfile中(所有,任何宝石已经不是在那里),然后运行bundle install,我得到这个错误:'捆绑install`甚至宝石返回错误已经安装

$ bundle install 
/home/mcrittenden/Dropbox/Code/omgwtf/Gemfile:40:in ``': No such file or directory - rmagick (Errno::ENOENT) 
    from /home/mcrittenden/Dropbox/Code/omgwtf/Gemfile:40:in `evaluate' 
    from /usr/lib/ruby/gems/1.9.1/gems/bundler-1.0.22/lib/bundler/dsl.rb:7:in `instance_eval' 
    from /usr/lib/ruby/gems/1.9.1/gems/bundler-1.0.22/lib/bundler/dsl.rb:7:in `evaluate' 
    from /usr/lib/ruby/gems/1.9.1/gems/bundler-1.0.22/lib/bundler/definition.rb:17:in `build' 
    from /usr/lib/ruby/gems/1.9.1/gems/bundler-1.0.22/lib/bundler.rb:138:in `definition' 
    from /usr/lib/ruby/gems/1.9.1/gems/bundler-1.0.22/lib/bundler/cli.rb:219:in `install' 
    from /usr/lib/ruby/gems/1.9.1/gems/bundler-1.0.22/lib/bundler/vendor/thor/task.rb:22:in `run' 
    from /usr/lib/ruby/gems/1.9.1/gems/bundler-1.0.22/lib/bundler/vendor/thor/invocation.rb:118:in `invoke_task' 
    from /usr/lib/ruby/gems/1.9.1/gems/bundler-1.0.22/lib/bundler/vendor/thor.rb:263:in `dispatch' 
    from /usr/lib/ruby/gems/1.9.1/gems/bundler-1.0.22/lib/bundler/vendor/thor/base.rb:386:in `start' 
    from /usr/lib/ruby/gems/1.9.1/gems/bundler-1.0.22/bin/bundle:13:in `<top (required)>' 
    from /usr/bin/bundle:19:in `load' 
    from /usr/bin/bundle:19:in `<main>' 

出现这种情况,即使它在抱怨宝石已经安装。在这种情况下,gem已正确安装在/usr/lib/ruby/gems/1.9.1/gems/中。

关于我可能做错什么的想法?

注:我知道我应该使用RVM,而我,但是对于这篇文章的目的,我不包括它,这样它可以作为一个可能的罪魁祸首被排除。

+0

你尝试过平常故障意味着像'宝石更新--system'?哪个版本的rails是这个? – prusswan 2012-02-16 16:09:46

回答

2

请告诉我们您的Gemfile。这是一条重要的信息。我的理论是你写了require 'rmagick',但应该是gem 'rmagick'

我的另一种理论是,你使用回蜱,而不是报价。请复制并粘贴您的gem文件,以便我们可以确切地看到您所写的内容。

+1

这几乎肯定是反向。改变了我的一个gemfiles以反引号使用gem,并得到了相同的错误。 – 2012-02-16 16:17:11

+0

这是后面的勾号。谢谢! – 2012-02-16 17:48:47

+0

以供将来参考,三种不同类型的引号有红宝石不同的含义,你应该小心选择使用哪一个。鉴于Gemfile中的所有其他宝石都没有使用反引号,因此在添加新宝石时应该谨慎使用反引号。反引起红宝石作为shell命令执行字符串。 – 2012-02-16 18:23:50