rails - "bundle install"的意外行为:安装到app目录中的文件夹中

al-*_*aif 1 ruby-on-rails bundler

我已经开始了一个简单的rails应用程序.我尝试安装Compass和Haml,(使用gem install)并运行'bundle install'.捆绑器重新安装了所有gem,并将它们放在rails应用程序主目录中的新文件夹"/ haml"中.

Your bundle is complete! It was installed into ./haml
Run Code Online (Sandbox Code Playgroud)

这是预期的吗?这些宝石不应该放在rvm目录中,而不是放在应用程序目录中吗?

小智 5

$ bundle install --system
Run Code Online (Sandbox Code Playgroud)

会解决你的问题.

宝石将安装到宝石的默认系统位置.如果您的系统gem存储在root拥有的位置(例如在Mac OSX中),bundle将要求您提供root密码以在那里安装它们.

安装宝石时,Bundler会检查供应商/缓存,然后检查系统的宝石.如果没有缓存或安装gem,Bundler将尝试从您在Gemfile中声明的源安装它.

--system选项是默认选项.使用--path选项后,将其传递回切换,如下所述.

  • 谢谢,解决了这个问题.我意识到我错误地使用了"bundle install haml"导致了这个问题. (2认同)