捆绑问题

我尝试命令bundle install --local但它显示问题:

 -bash: /usr/local/bin/bundle: /usr/local/bin/ruby: bad interpreter: No such file or directory. 

请帮我。

我想你需要在你的.bashrc(linux)中导出ruby和bundle的路径。

打开.bashrc并添加以下行:

 export PATH="$PATH:/usr/bin:/usr/local/bin/" 

它应该工作。

对我有用的解决方案完全不同,可能是因为我对使用RVM不一致。

我使用’which bundler’来找出Bundler的启动位置,它来自/ usr / bin / bundler。 注意到/ usr / bin / bundler开始于我的系统上不存在的ruby的位置和版本,我做了

 gem uninstall bundler gem install bundler 

检查’哪个捆绑包’再次确认捆绑器现在安装在.rvm环境中而不是/ usr / bin / bundler中,现在引用正确版本的ruby; 所以bundle install现在适用于我的rails项目。

在我这边,我正在使用rbenv。
当我检查/ usr / local / bin / bundle时,它显示它正在使用较旧的ruby,从而导致问题。

 #!/usr/bin/ruby1.9.1 

通过将其更改为指向正确的ruby来解决问题

 #!/home/user/.rbenv/shims/ruby 

bundle可执行文件由bundler gem提供。 如果您正在使用rvm那么查看/usr/local/bin/bundlervm /usr/local/bin/bundle指示存在问题,因为使用rvm意味着像您的主目录一样安装了像bundler这样的gem,通常是~/.rvm/gems/...

 # Symptoms of a broken bundler installation:- # Cannot start Rails... $ bin/rails s /Users/rogermarlow/project/config/boot.rb:9:in 'rescue in ': uninitialized constant Bundler (NameError) # bundle not working... $ bundle install zsh: /usr/local/bin/bundle: bad interpreter: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin: no such file or directory # ^----- that path does not look right, rvm does not put gems there $ which bundle /usr/local/bin/bundle # ^--- I want bundle from something under ~/.rvm/gems # First check rvm is in effect: $ rvm reload RVM reloaded! $ which ruby /Users/rogermarlow/.rvm/rubies/ruby-2.3.4/bin/ruby # ^--looks good, it is an rvm path, not /usr/local/bin/... # Now fix bundler $ gem uninstall bundler # just in case $ gem install bundler Fetching: bundler-1.16.1.gem (100%) Successfully installed bundler-1.16.1 1 gem installed $ which bundle /Users/rogermarlow/.rvm/gems/ruby-2.3.4@project/bin/bundle $ ^--- that is better, bundle is on a path controlled by rvm # bundle now working $ bundle install Fetching gem metadata from http://rubygems.org/.......... *snip* # rails now working $ bin/rails s => Booting Thin => Rails 4.2.7.1 application starting in development on http://localhost:3000 *snip* 

对于新创建的gem镶嵌gem捆绑包对我来说,

在捆绑器安装路径之前,/ usr / local / bin / bundler

安装捆绑包以解决问题。

 gem install bundler --no-ri --no-rdoc 

Bundler路径更改为/home/root/.rvm/gems/ruby-2.2.1@drag-drop-list/bin/bundler

遇到同样的问题,我在/var/lib/gems/2.3.0/gems/bundler-1.16.1;找到了bundler安装/var/lib/gems/2.3.0/gems/bundler-1.16.1;
然后我通过创建这样的符号链接来修复错误:

ln -s /var/lib/gems/2.3.0/gems/bundler-1.16.1/ /usr/lib/ruby/gems/2.3.0/gems/bundler-1.16.1

我这样做是因为我需要这个版本的ruby。