18

我收到此错误:

在任何源中找不到 i18n-0.6.1 运行bundle install以安装缺少的 gem。

当我尝试运行捆绑安装时,我得到了这个:

-bash: bundle: command not found

我已经用谷歌搜索并试图解决这个问题一段时间,但没有希望。请帮忙。

4

5 回答 5

20

不要弄乱你的路径。

只需使用rbenvruby ​​-build来管理和安装您的 ruby​​ 版本。

然后安装bundler gem 并重新散列。

按如下方式安装 rbenv(如果您还没有):

$ brew update
$ brew install rbenv ruby-build

初始化 rbenv 如下:

$ rbenv init   

安装 ruby​​-build 以在类 UNIX 系统上编译和安装不同版本的 Ruby:

brew install ruby-build

安装特定的 ruby​​ 版本,例如 1.9.3-p551:

$ RUBY_VERSION=1.9.3-p551
$ ruby-build $RUBY_VERSION $HOME/.rbenv/versions/$RUBY_VERSION

验证它是否有效:

$ ruby --version
ruby 1.9.3p551 (2014-11-13 revision 48407) [x86_64-darwin14.0.0]

将该版本设置为全局/默认 Ruby 版本:

$ rbenv global 1.9.3-p551

安装捆绑器:

$ gem install bundler
Fetching: bundler-1.7.11.gem (100%)
Successfully installed bundler-1.7.11
1 gem installed

更新 rbenv:

$ rbenv rehash

现在,bundler 将在您刚刚安装的 Ruby (1.9.3-p551) 版本中可用。

验证 RubyGems 环境:

$ gem env
RubyGems Environment:
  - RUBYGEMS VERSION: 1.8.23.2
  - RUBY VERSION: 1.9.3 (2014-11-13 patchlevel 551) [x86_64-darwin14.0.0]
  - INSTALLATION DIRECTORY: /Users/lex/.rbenv/versions/1.9.3-p551/lib/ruby/gems/1.9.1
  - RUBY EXECUTABLE: /Users/lex/.rbenv/versions/1.9.3-p551/bin/ruby
  - EXECUTABLE DIRECTORY: /Users/lex/.rbenv/versions/1.9.3-p551/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86_64-darwin-14
  - GEM PATHS:
     - /Users/lex/.rbenv/versions/1.9.3-p551/lib/ruby/gems/1.9.1
     - /Users/lex/.gem/ruby/1.9.1
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
     - "gem" => "--no-document"
     - "install" => "--no-ri --no-rdoc"
     - "update" => "--no-ri --no-rdoc"
     - :sources => ["http://rubygems.org", "http://gems.github.com", "http://gems.rubyforge.org", "http://gemcutter.org"]
  - REMOTE SOURCES:
     - http://rubygems.org
     - http://gems.github.com
     - http://gems.rubyforge.org
     - http://gemcutter.org
于 2015-01-08T16:15:42.460 回答
9

尝试运行

gem env

然后你会得到这样的东西:

RubyGems Environment:
  - RUBYGEMS VERSION: 1.8.23
  - RUBY VERSION: 1.9.3 (2013-06-27 patchlevel 448) [x86_64-darwin12.5.0]
  - INSTALLATION DIRECTORY: /usr/local/Cellar/ruby193/1.9.3-p448/lib/ruby/gems/1.9.1
  - RUBY EXECUTABLE: /usr/local/Cellar/ruby193/1.9.3-p448/bin/ruby
  **- EXECUTABLE DIRECTORY: /usr/local/Cellar/ruby193/1.9.3-p448/bin**
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86_64-darwin-12
  - GEM PATHS:
     - /usr/local/Cellar/ruby193/1.9.3-p448/lib/ruby/gems/1.9.1
     - /Users/madhava/.gem/ruby/1.9.1
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - http://rubygems.org/

只需将可执行目录添加到 PATH 变量中,如下所示:

echo PATH=/usr/local/Cellar/ruby193/1.9.3-p448/bin:$PATH >> ~/.bash_profile

重新加载您的终端以应用更改,您将被设置!

于 2013-10-15T11:24:29.087 回答
7

似乎与 Sierra,您需要使用它来安装捆绑器:

sudo gem install bundler -n /usr/local/bin

这里参考的是El Cap如何引入“SIP(System Integrity Protection)”。

于 2017-05-24T22:08:16.470 回答
0

请注意,如果您使用的是 rbenv,您可能应该只是rbenv rehash而不是弄乱您的PATH

于 2014-12-02T22:17:14.190 回答
0

我在Mac OS X Maverics (10.9.2)

目前我的~/.profile文件内容如下:

# MacPorts Installer addition on 2014-02-23_at_17:28:39: adding an appropriate PATH variable for use with MacPorts.
export PATH=/opt/local/bin:/opt/local/sbin:$PATH
# Finished adapting your PATH environment variable for use with MacPorts.

source /usr/local/bin/virtualenvwrapper.sh
. /sw/bin/init.sh

我的PATH变量 ( $PATH) 设置为

/sw/bin:/sw/sbin:/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin

这对我有用。首先,我使用以下方法安装了捆绑器: gem install bundler

但是我得到了错误:

ERROR:  While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /Library/Ruby/Gems/2.0.0 directory.

因此我跑了sudo gem install bundler,安装bundler成功

之后,当我运行时,gem env我将可执行目录设置/usr/bin为已经是我的PATH变量的一部分。因此,我没有对 ~/.profile 文件进行任何更改。

现在我可以成功运行了bundle install

如果您的变量或文件Executable Directory中未包含其中列出的路径,则您必须将其包含在内。$PATH~/.profile

于 2014-05-03T21:19:32.260 回答