如果它说你没有权限,那么你只需要使用 sudo 运行它
sudo gem install bundler --no-rdoc --no-ri
但我真的建议安装 rbenv 或 rvm,以便更好地控制 ruby 版本,并且您不需要密码或 sudo 命令来安装 gem。
我会在这里指导你安装 rvm,这是个人喜好,但你也安装 rvenb 会得到相同的结果。
首先,您必须完全删除您此时安装的 ruby 版本和所有 gem
gem uninstall --all # maybe you will need sudo here
sudo apt-get purge ruby
首先安装mpapis公钥
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
然后安装 rvm
\curl -sSL https://get.rvm.io | bash
然后添加到.bashrc
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # This loads RVM into a shell session.
添加到 .bash_profile
source ~/.profile
然后你可以安装你想要的 ruby 版本(我在这里使用 2.3.0 作为示例,更改为你之前在应用程序上工作的版本)
rvm install 2.3.0
你已经安装了 ruby,如果你不想在本地使用 gems 的文档,我建议运行这个命令
echo 'gem: --no-document' >> ~/.gemrc
然后你可以设置你想要使用的 ruby 版本,你有不同的选项,每次打开终端时手动选择它
rvm use 2.3.0 # or the version that you want to use in that moment
或将 ruby 版本和 rvm 添加到 gemfile 中,每次您制作 cd 到应用程序的路径时,rvm 都会为您选择是否将其添加到 gemfile 中
source 'https://rubygems.org' # this is by default on your gemfile
ruby '2.3.0' # this is the line you need to add, change for the version that you want on he app
当您选择了 ruby 版本时,您必须安装 bundler gem,您只需按您安装的 ruby 版本运行一次
gem install bundle
然后你就可以在你的应用上运行 bundle install 并且会像一个魅力一样工作。
使用 rvm,您可以在机器上安装不同版本的 ruby on rails,正如我所说,您安装的每个版本都需要安装一次 bundler gem。
如果您安装了不同版本的 ruby,我建议您添加一个默认值,这样如果您在该会话中没有在终端上设置 ruby 版本,它将默认使用一个,您可以这样做
rvm --default use 2.3.0
希望这可以帮助您清楚。