1

运行 OSX Mavericks、ruby 2.1.1p76(2014-02-24 修订版 45161)[x86_64-darwin13.0]、rvm 1.25.23(主)和 rails-4.1.0(据称)

我正在阅读railsapps.org关于学习 rails的书,并且在昨天完成了大约 1/2 的工作。当我停下来休息一天时,我关闭了 iTerm2 并关闭了 Macbook Pro。今天,我打开电源,打开 iTerm,导航到我的工作目录(~/rubyonrails/learn-ruby)并输入rails -v.

我看到这个:

`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.`

所以我运行sudo gem install rails它,它显示它已经安装了 rails-4.1.0。现在rails -v仍然给我上面相同的错误消息。

我也尝试过rvm use ruby-2.1.1@learn-rails先运行,但仍然收到错误消息。

所以我有点卡住了,我不知道该怎么做才能让rails正常工作。另外,我该如何设置 bash 环境,这样我就不必每次都经历这个?导航到我的工作目录并开始工作而不必每次都进行大量重新安装和重新配置会很好。

问候,杰夫

4

3 回答 3

2

请输入您的外壳:

$ bash --login

然后重复你的命令。

rails -v 

也尝试用完整路径调用它:比如:

/your/path/to/rails -v

我认为外壳只是不知道 rvm/rails 等的位置。

您可以通过输入以下内容来解决此问题:

$ source ~/.rvm/scripts/rvm
于 2014-04-22T15:49:05.930 回答
1

你的问题是你跑了

sudo gem install rails

告诉您执行此操作的错误消息来自您的系统 Ruby,它不知道您要使用 RVM。

RVM 将 gem 安装到您的用户空间目录中。通过使用 sudo,您可以绕过它并将其安装到(有效地)超级用户空间,即全局。

如果你只是运行

gem install rails

那么您将使用 RVM 的gem实用程序副本,而不是全局安装的版本。

于 2014-04-22T15:55:08.303 回答
1

当您切换到ruby-2.1.1@learn-railsruby​​/gemset 组合并执行gem list时,您会看到什么?

人们通常使用 rvm 的方式是让每个项目文件夹指定它使用的 ruby​​ 和 gemset(它们不必都不同)。这是通过名为.ruby-version和的文件完成的.ruby-gemsetruby-2.1.1在你的情况下,这些应该learn-rails分别包含。

如果您还没有设置这些,然后离开文件夹并再次输入。然后bundle install将项目的 gem 安装到 rvm/gemset 组合中。

于 2014-04-22T15:48:23.750 回答