这是一场噩梦。我使用Ruby Windows安装程序(位于此处:https://rubyinstaller.org/downloads/)安装了新版本的Ruby 2.5。这是版本:Ruby interpreter (CUI) 2.5.3p105 [x64-mingw32]
我认为新的Windows安装程序会将"C:\Ruby25-x64\bin"
添加到我的PATH中,即DIT。
但是命令行指示我的计算机仍在使用我先前安装的EARLIER 2.2.4 Ruby版本。 DOS和GITBASH都显示了较早的Ruby版本(即使我在USER和SYSTEM PATH环境变量中都添加了新的ruby路径之后,甚至在重启后也是如此!)。
换句话说,看起来RUBY并未在我的机器上使用PATH变量,因为更改PATH使其指向较新的版本没有任何作用。
我注意到在输出中MING64和MING32之间存在差异。
我有一台64位计算机,但我认为这与使用PATH变量无关。
USER@USER MINGW64 /
$ ruby -v
ruby 2.2.4p230 (2015-12-16 revision 53155) [i386-mingw32]
注册表中还列出了最新的ruby路径(PATH存储在注册表中)。
为什么Windows无法识别新的Ruby并坚持使用旧的Ruby?
答案 0 :(得分:0)
PATH
变量用于“搜索”可执行文件。如果找到了具有给定名称的所需可执行文件,则系统将使用它,而忽略其余的文件。
您之前可能在bin
变量中列出了Ruby的先前版本PATH
,然后在{{1}的 end 处附加了新版本的Ruby。 }},由于先前找到的旧版本Ruby的点击,它可能会被忽略。
要确保您可以使用PATH
变量中列出的Ruby新版本,只需从PATH
中删除旧版本,或将新版本移到最前面即可。
答案 1 :(得分:0)
是的。 。 。陈Geno是正确的。我有一个Ruby实例连接到Ruby on Rails安装。这就是我发现的。
好的,这是问题。我已经安装了Ruby 和Windows笔记本电脑上的Ruby on Rails。两者都是 Windows安装程序。问题是Ruby在 Rails安装其OWN Ruby实例, HIJACKS通过某些EVIL表示Ruby路径意味着其他 而不是PATH环境变量。为了 将我最近安装的Ruby 2.5版本 工作,我不得不取消安装旧版Ruby on Rails 使用Ruby 2.2的版本。
有人知道这个邪恶的劫持是什么吗? 组成?
现在我不再拥有Rails,除非我使用 最新的rails安装程序。我并不需要 它;我只是为了学习Rails 一次探索它。
但是,确实应该有一种安装方法 不用安装其Ruby版本的rails 发动机?一种让Rails使用当前方法的方法 全局安装在计算机上的Ruby。
除非如此,否则我想一个人需要某种 Ruby版本管理器来切换路径。版本号 经理将不得不使用任何劫持方法 我猜Rails用来切换路径。