前几天我下载了asdf,并尝试将它与从Github下载的ruby on rails项目一起使用。当我运行asdf install
时,得到如下响应:
firebase 9.10.0 is already installed
ruby 2.7.2 is already installed
然后运行rails s
:
No preset version installed for command rails
Please install a version by running one of the following:
asdf install ruby 2.7.2
or add one of the following versions in your config file at
/Users/******/Desktop/****/.tool-versions
ruby 3.0.1
该项目运行在ruby 2.7.2上。
.工具版本:
ruby 2.7.2
node 12.18.3
我用自制软件安装了asdf,并使用了oh-my-zhs和asdf插件。
EDIT:正在运行
asdf install ruby 2.7.2
只是说
ruby 2.7.2 is already installed
9条答案
按热度按时间dojqjjoe1#
您需要重新执行ruby。请执行
asdf reshim ruby
,然后再次尝试执行rails s
。xqkwcwgp2#
对于遇到这个问题的人,如果他们已经通过Homebrew安装了asdf,并且正在使用标准的ZSH shell(没有oh-my-zsh插件),请不要忘记获取asdf bash脚本:
ckocjqey3#
适用于RubyMine用户
如果您在集成的RubyMine终端中运行终端命令,在您将项目SDK更改为新安装的版本之前,不会发生任何变化。重新启动终端后,一切都将按预期运行。
ybzsozfc4#
如果
.tool-versions
文件中已经有Ruby 2.7.2,只需运行这将安装Rails gem的正确版本,并且一切都将恢复正常。
首先尝试查看
shim-versions
的输出,您很可能会看到Ruby 2.7.2在那里,但Rails 2.7.2不在那里:lc8prwob5#
我在这个Reddit thread中找到的purplespline给出的以下步骤对我很有效:
那么您应该能够运行其他Rails命令。
x7rlezfr6#
我遇到了类似的问题,我只是重新安装了Rails。
6l7fqoea7#
要进行诊断,请检查以下输出
该Ruby
和
Ruby--版本
如果它确实显示了ruby版本2.7.2,则从该工作目录再次运行“gem install rails”或(如果gemfile.lock存在,则运行“bundle install”)。
一个常见的错误是在修改shell配置文件后不打开新的shell。另外,如果某个程序安装在不同的路径下,zsh需要运行“rehash”命令,但重新打开shell会解决这个问题。
93ze6v8z8#
应首先安装gem包
则可以运行
bundle
或bundle install
eqfvzcg89#
在我这边,我没有在我的
zshrc
上导出或添加这个和资源