未找到更新的 rbenv rails

updated rbenv rails not found

我已经用 brew update && brew upgrade 更新了所有的冲泡配方。我在升级后发现 rails 没有找到,但是当我输入

which rails

它returns /usr/bin/rails。我只能猜测我必须再次将 rails 路径添加到 .zshrc。但是,我不确定我需要添加到 .zshrc 文件中的所有内容。

更新失败的所有东西是什么。

.zshrc 文件

# Adding bin to PATH for sublime
export PATH="$PATH:~/bin"

# Rbenv stores data under ~/.rbenv by default. If you absolutely need to
# store everything under Homebrew's prefix, include this in your profile:
export RBENV_ROOT=/usr/local/var/rbenv

# MongoDB

export MONGO_PATH=/usr/local/Cellar/mongodb/3.0.7
export PATH=$PATH:$MONGO_PATH/bin

# Ruby Motion android tool
export RUBYMOTION_ANDROID_SDK=/Users/abhimanyuaryan/.rubymotion-android/sdk
export RUBYMOTION_ANDROID_NDK=/Users/abhimanyuaryan/.rubymotion-android/ndk

export DOTFILES=$HOME/.dotfiles
export ZSH=$DOTFILES/zsh

# display how long all tasks over 10 seconds take
export REPORTTIME=10

[[ -e ~/.terminfo ]] && export TERMINFO_DIRS=~/.terminfo:/usr/share/terminfo

# define the code directory
# This is where my code exists and where I want the `c` autocomplete to work from exclusively
if [[ -d ~/code ]]; then
    export CODE_DIR=~/code
fi

# source all .zsh files inside of the zsh/ directory
for config ($ZSH/**/*.zsh) source $config

if [[ -a ~/.localrc ]]; then
    source ~/.localrc
fi


# initialize autocomplete
autoload -U compinit
compinit

for config ($ZSH/**/*completion.sh) source $config

export EDITOR='nvim'

export PATH=/usr/local/bin:$PATH

# add /usr/local/sbin
if [[ -d /usr/local/sbin ]]; then
    export PATH=/usr/local/sbin:$PATH
fi

# adding path directory for custom scripts
export PATH=$DOTFILES/bin:$PATH

# check for custom bin directory and add to path
if [[ -d ~/bin ]]; then
    export PATH=~/bin:$PATH
fi

[ -z "$TMUX" ] && export TERM=xterm-256color

# install rbenv
if hash rbenv 2>/dev/null; then
    eval "$(rbenv init -)"
fi

if [[ -d ~/.rvm ]]; then
    PATH=$HOME/.rvm/bin:$PATH # Add RVM to PATH for scripting
    source ~/.rvm/scripts/rvm
fi

# alias git to hub
if hash hub 2>/dev/null; then
    eval "$(hub alias -s)"
fi

# source nvm
export NVM_DIR=~/.nvm

if hash brew 2>/dev/null; then
    source $(brew --prefix nvm)/nvm.sh
    source `brew --prefix`/etc/profile.d/z.sh
fi


# Base16 Shell
# if [ -z "$THEME" ]; then
    export THEME="base16-eighties"
# fi
if [ -z "$BACKGROUND" ]; then
    export BACKGROUND="dark"
fi


BASE16_SHELL="$DOTFILES/.config/base16-shell/$THEME.$BACKGROUND.sh"
# [[ -s $BASE16_SHELL ]] && source $BASE16_SHELL
source $BASE16_SHELL

export NVM_DIR=~/.nvm
  . $(brew --prefix nvm)/nvm.sh


# Online help for ZSH
  unalias run-help
  autoload run-help
  HELPDIR=/usr/local/share/zsh/help

很可能你已经 Rails 在某些 rvm 管理的 Ruby 版本中的某些特定 gemset 中存储了一些东西,但是你没有告诉 rvm 使用 又来了。

查看您安装的 Ruby 版本(rvm list)。您之前使用的那个很可能仍然存在。如果您认识一个,请使用它(使用 rvm use ruby-2.2.4 或任何版本),否则开始查找所有版本。

对于您检查的每个 Ruby 版本,查看 rvm 在其下管理的 gemsets(使用 rvm gemset list)。很有可能,您要么为某个 Rails 项目创建了一个,要么作为一般 Rails 项目的入门者(这就是我所做的),或者您可能只是将所有 gem 安装到 defaultglobal 宝石。

如果您认出一个特定的,请使用它(使用 rvm gemset use rails_4_2 或任何 gemset 名称),否则开始查找所有 gemsets。您最终会找到正确的组合。

如果您不这样做,请执行与从头开始相同的过程。首先确保您使用的是所需的 Ruby 版本(您可能需要使用 rvm install 2.3 或任何版本安装它)。然后创建一个新的 gemset(用 rvm gemset use --create rails_4_2 或任何你想调用的)。最后,gem install rails.

我遇到的唯一解决办法是重新安装 ruby & rails。我认为在升级 rbenv 时,现有安装以某种方式被删除

# Install Ruby
rbenv install 2.2.3
rbenv global 2.2.3
ruby -v

gem install rails -v 4.2.4

rbenv rehash

rails -v
# Rails 4.2.4

我是这样解决的:

1) sudo apt-get 更新

2) sudo apt-get install -y ruby-build

3) git 克隆 https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build

4) rbenv 安装 2.3.0

5) rbenv 全局 2.3.0