找不到捆绑命令 mac
Posted
技术标签:
【中文标题】找不到捆绑命令 mac【英文标题】:Bundle command not found mac 【发布时间】:2015-07-08 01:41:34 【问题描述】:我正在使用 ruby,我收到了一个包含一些 ruby 程序的 zip 文件,上面写着:在文件夹中,运行 bundle install
以安装所需的软件包。
当我在终端中运行命令时,它会显示bundle command not found
。
谁能给我详细的说明我该如何解决这个问题?
【问题讨论】:
【参考方案1】:终端 -
sudo su
然后你的密码:
更改目录:
cd command .
如果您没有写入驱动器的权限。
chmod 755 foldername.
你也可以在终端中使用 mkdir 命令
mkdir /Library/Ruby/Gems/2.3.0.1
复制和粘贴:gem install bundler
粘贴到终端。
Fetching: bundler-1.16.2.gem (100%)
bundler's executable "bundle" conflicts with /usr/local/bin/bundle
Overwrite the executable? [yN] y
bundler's executable "bundler" conflicts with /usr/local/bin/bundler
Overwrite the executable? [yN] y
Successfully installed bundler-1.16.2
Parsing documentation for bundler-1.16.2
Installing ri documentation for bundler-1.16.2
Done installing documentation for bundler after 7 seconds
1 gem installed
适用于 OS X High Sierra。
【讨论】:
1.这是完全不可读的。您应该使用 4 个空格缩进命令。 2. sudo 很危险。如上所述,您正在搞乱您的系统 ruby 安装,并且可能会破坏您的操作系统。 3. 你做了很多不必要的事情(见接受的答案)【参考方案2】:在这里尝试了所有解决方案,但没有成功。最终我用两种不同的方法让它工作:
如果你不介意的话,请将alias bundle=/path/to/bundle
设置为 .bashrc
。
通过rbenv
重新创建一个新的开发环境并执行bundle install rails
将修复它(修复了我的问题)。
【讨论】:
【参考方案3】:一些 ruby 版本管理器(例如 chruby 和 rbenv)为每个版本单独存储 gem,因此当您安装不同版本的 ruby 时,您需要gem install bundler
。
【讨论】:
【参考方案4】:gem install bundler
是怎么做的。
您可能想要使用诸如rbenv 之类的工具来管理gem。
【讨论】:
我尝试这样做时收到以下错误:您没有 /Library/Ruby/Gems/2.0.0 目录的写入权限 然后使用sudo gem install bundler
。
我可以发誓我之前尝试过,但没有成功。但我又试了一次,它奏效了。哈哈。非常感谢!
@TejaK,什么有效? sudo ...
。不要为此使用 sudo。你的系统已经安装了 ruby 来完成它所做的事情——你不想接触系统安装。如果您搞砸了 ruby 的系统安装,您可能会搞砸整个操作系统。您需要安装自己的 ruby 才能使用。最好(也是最简单)的方法是使用 rvm(我使用的)或 rbenv。是的,您必须先安装 rvm 或 rbenv。一旦你安装了你自己的 ruby,你所要做的就是gem install bundler
--no sudo。要安装 rvm,请参见此处:rvm.io/rvm/install.
是的,所有其他线程也警告不要使用 sudo,所以我继续按照 B 七的建议使用 rbenv!【参考方案5】:
只是为那些(至少在 OSX 上)重申这一点
gem install bundler
给出一个权限错误,一个似乎对很多人都有效的选项是使用rbenv,这会在你的 ruby 命令(如gem install
)和你的环境(如果我的理解是正确的)之间添加一个垫片)。
一定要查看this answer。
在上面的链接下,该过程的布局相当好。我选择通过自制软件安装:
brew update
brew install rbenv
然后你必须在你的配置文件中添加一个参数命令,如果你使用的是普通的~/.bash_profile
,可以这样做:
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
看起来像是添加一个命令来通过你的 shell 初始化 rbenv。
不要为 get 启动一个新的 shell,可能是通过打开一个新终端或使用 source ~/.bash_profile
命令。
确保你的$PATH
有这个.rbenv/shims
在你的shell 可能正在寻找Ruby 的任何其他目录之前(OSX 有它自己的版本,我们不想摆弄它):echo $PATH
。
which ruby
/Users/mikekilmer/.rbenv/shims/ruby
#GOOD!
现在安装一个 Ruby 版本:
rbenv install 2.2.3
(使用rbenv install -l
查看所有可能的版本)。
现在我们可以使用rbenv global 2.2.3
切换到全局使用较新版本的Ruby。 (嗯。我以为我们不想弄乱系统版本。)你也可以试试rbenv local 2.2.3
或rbenv shell 2.2.3
。
最后运行:
rbenv rehash
现在ruby -v
应该返回2.2.3
并且gem install bundler
应该可以工作。
在这里做的。
【讨论】:
救了我。非常感谢。 最佳答案!关键是对任何类型的情况的详细解释,只执行gem install bundler
将不起作用。谢谢。
我在这个答案中学到的关于 Ruby 的知识比我在过去所有其他机会中学到的都多!
谢谢@DouglasFischer。非常感谢您的赞美。【参考方案6】:
只需在终端中运行 gem install bundler
。
有bundler
的链接你可以看看:bundler
【讨论】:
以上是关于找不到捆绑命令 mac的主要内容,如果未能解决你的问题,请参考以下文章