0

当我尝试在保存所有 Rails 应用程序的目录中创建一个新的 Rails 应用程序时,我收到以下错误:

Rails is not currently installed on this system. To get the latest version, simply type:

    $ sudo gem install rails

You can then rerun your "rails" command.

我最近一直在研究 RVM 教程,所以我认为它可能与我创建的 gemset 有关。我输入了“rvm gemset list”,发现以下内容:

gemsets for system (found in /Users/rickthomas/.rvm/gems/system)
=> (default)
   *

但奇怪的是,我 cd'ed 进入其中一个应用程序的目录,并运行相同的命令,然后发现:

gemsets for ruby-1.9.3-p429 (found in /Users/rickthomas/.rvm/gems/ruby-1.9.3-p429)
=> (default)
   global

当我在主目录中运行“rails --version”命令时,我会收到运行“sudo gem install rails”的消息,但是当我从应用程序目录中运行相同的命令时,我会收到以下信息:

Rails 3.2.12

有点困惑为什么我突然不能创建一个新的 Rails 应用程序,因为我创建的最后一个应用程序是今天早上,在我完成 RVM 教程的第二天,并且从那时起没有对 gemset 进行任何更改。

4

1 回答 1

1

看起来您的“系统”红宝石没有安装 Rails gem。无论如何,您可能不想使用系统红宝石。你试试这个怎么样:

rvm use 1.9.3      # switch to your Ruby 1.9.3 that the other app used
gem list           # make sure rails is listed
gem install rails  # (only if rails was not listed)
rails new myapp

你观察到的“奇怪的东西”没有什么奇怪的。当您 cd 进入一个目录时,RVM 会查看该目录中的 .rvmrc、.ruby-version 和 .ruby-gemset 等文件,并自动更改您的环境以匹配。您可以运行“rvm info”来查看您当前所处的环境类型(我通常关注 GEM_HOME 和 GEM_PATH 变量)。在这种情况下,cd 到 Rails 应用程序目录会导致 RVM 将您切换到 Ruby 1.9.3,这就是您安装 rails gem 的 Ruby。对我来说似乎很正常。

于 2013-11-01T01:23:16.867 回答