ruby Rbenv不工作

yeotifhr  于 2023-04-05  发布在  Ruby
关注(0)|答案(3)|浏览(154)

我最后把ruby2.0安装到了~/.rbenv/versions中,现在除了它什么都没有了
$ rbenv版本

system
*ruby-1.9.3-p392 (set by /apps/test_app/.ruby-version)
ruby-2.0.0-p0

$ ruby -v

ruby 2.0.0.p0

$环境|grep PATH

PATH=/home/cbron/.rbenv/shims:/home/cbron/.rbenv/bin

$cat ~/.bash_profile

export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"

$rbenv全局

ruby-1.9.3-p392

$rbenv本地

ruby-1.9.3-p392

$rbenv shell

rbenv: no shell-specific version configured

编辑:现在设置shell,仍然没有。
$rbenv shell

ruby-1.9.3-p392

ruby -v还在

ruby 2.0.0p0

我已经找到了我的bash_profile,甚至重新启动了计算机。

dxpyg8gm

dxpyg8gm1#

我在使用zsh时也遇到了同样的问题,这个解决了它:

$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshenv
$ echo 'eval "$(rbenv init -)"' >> ~/.zshenv
$ echo 'source $HOME/.zshenv' >> ~/.zshrc
$ exec $SHELL

所以基本上把线从profile移到env!

mum43rcc

mum43rcc2#

摘自rbenv自述:

rbenv shell

通过在shell中设置RBENV_VERSION环境变量来设置特定于shell的Ruby版本。此版本将覆盖特定于应用程序的版本和全局版本。

$ rbenv shell jruby-1.7.1

在没有版本号的情况下运行时,rbenv shell会报告RBENV_VERSION的当前值。您也可以取消设置shell版本:

$ rbenv shell --unset

请注意,您需要启用rbenv的shell集成(安装说明的第3步)才能使用此命令。如果您不喜欢使用shell集成,您可以自己设置RBENV_VERSION变量:

$ export RBENV_VERSION=jruby-1.7.1

因此,为了使用它,您需要将ruby版本指定为rbenv shell参数(例如rbenv shell 2.0.0.p0,或设置RBENV_VERSION(例如export RBENV_VERSION=2.0.0.p0))

lc8prwob

lc8prwob3#

**TL;DR:**重装rbenv就行了,除非你跟我一样固执……

我搞砸了.rbenv文件夹中的权限,因此无法加载shims,因为它们没有 * 执行权限 *

chmod u+x ~/.rbenv/shims/*

免责声明

我有更深层次的权限问题,rbenv甚至不起作用,所以我之前做了其他chmod u+x ...

chmod u+x ~/.rbenv/libexec/*
chmod u+x ~/.rbenv/**/bin/*
  • 重新安装rbenv可能更容易也更安全。但这很有趣!*

相关问题