“您的 PATH 中没有 [PATH],gem 可执行文件将无法运行。” 使用“gem install --user-install bundler”时

dra*_*fly 16 ruby rubygems

我试图在我的 Mac 中安装 jekyll 并收到如下警告:

警告:您的 PATH 中没有 /Users/Carrot/.gem/ruby/2.3.0/bin,gem 可执行文件将不会运行。

我检查了 gem list 并显示它已安装;我可以通过路径“/Users/Carrot/.gem/ruby/2.3.0/bin”找到jekyll。我读了一篇文章,这似乎是我的情况。我想知道是否必须通过sudo?我现在更喜欢卸载所有东西(因为它还同时安装了 sass 和一堆东西)并通过自制软件。我该如何进行卸载?

非常感谢!

小智 47

对于那些对 @lamech-desai 答案有疑问的人,(实际上,当他们执行Desai 的命令时,它显然对他们暂时有效)。所以你可以轻松地做到这些:

~/.bashrc如果您想使用 bash 或者~/.zshrc如果您正在使用 zsh等,请打开...

$ nano .bashrc    ## bash users
$ nano .zshrc     ## zsh users
Run Code Online (Sandbox Code Playgroud)

然后将这两行代码复制并粘贴到 .*rc 文件的末尾:

export GEM_HOME="$(ruby -e 'puts Gem.user_dir')"
export PATH="$PATH:$GEM_HOME/bin"
Run Code Online (Sandbox Code Playgroud)

然后只需按ctrl+sctrl+x。这会将更改保存到.bashrc,但您不会立即看到它们 - 直接在您使用当前用户下次 shell 登录时直接看到它们。立即查看更改的一种方法是键入source .bashrc- 瞧,您的.bashrc将被重新加载。您还可以使用 检查这一点echo $PATH

感谢@lamech-desai 的精彩回答


Min*_*int 11

如果你像我一样使用 Mac,则需要将 添加PATH到环境变量中PATH。你可以用export命令来做到这一点:

export PATH="/Users/Carrot/.gem/ruby/2.3.0/bin:$PATH"
Run Code Online (Sandbox Code Playgroud)

如果您想了解有关此过程的更多信息,请阅读有关此内容的博客文章:Adding a Path to the Linux PATH Variable


Pal*_*sri 6

您需要将目录添加到 PATH 环境变量中

https://askubuntu.com/questions/406643/warning-you-dont-have-a-directory-in-your-path-gem-executables-will-not-run

  • 谢谢回复。我只是试过,它什么也没返回。我怎么知道它是否有效? (2认同)

Lam*_*sai 5

如果您使用的是 arch linux,只需在终端中使用以下命令

[user~]$ export GEM_HOME="$(ruby -e 'puts Gem.user_dir')"
[user~]$ export PATH="$PATH:$GEM_HOME/bin"
[user~]$ gem list
[user~]$ gem update
Run Code Online (Sandbox Code Playgroud)