Ruby 2.1.1,无法找到Railties

时间:2014-03-09 23:22:27

标签: ruby-on-rails ruby ruby-on-rails-4 devise rubygems

使用this repo,这需要ruby 2.1.1和rails 4.1。我正在使用RVM,我已经下载了ruby 2.1.1,但是当我输入rails -v时出现此错误。我觉得我需要完全重新开始,但你看到下面有什么可能有一个相对简单的解决方案吗?

当我输入rails -v时,我收到此错误:

/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/rubygems/dependency.rb:298:in to_specs': Could not find 'railties' (>= 0) among 14 total gem(s) (Gem::LoadError)

当我输入ruby -v

ruby 2.1.1p76 (2014-02-24 revision 45161) [x86_64-darwin13.0]

的.bash_profile

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM$

RVM Gemset List

gemsets for ruby-2.1.1 (found in /Users/me/.rvm/gems/ruby-2.1.1)
=> (default)
   demo
   global
   myapp
   rails
   rails4.1

1 个答案:

答案 0 :(得分:4)

尝试运行这些命令:

rvm use 2.1.1@rails-devise --create
bundle install
rails -v

evan: 但不是在我生成自己的应用时,因为它在我创建它之前给了我一个错误。

让我们讨论RVM的一些基本概念,它们可以帮助您:

每个项目都应该包含自己的gemset。 Repo在根文件夹中包含两个特殊文件:

.ruby-gemset - 包含项目指定的唯一gemset名称

.ruby-version - Ruby版本号,查看可用列表:rvm list

这些文件应放在计算机上每个项目的根文件夹中。 当您从Linux终端打开项目时,rvm扫描这两个文件,读取它们,并激活所需的ruby版本并自动加载必要的gem。

注意:每个rvm会话仅在当前的终端会话中处于活动状态。您应该分别为每个终端会话重新激活它。

如果未指定当前gemset名称,则RVM使用default rvm gemset(未命名的gemset)。 当我需要快速创建临时内容时,我将默认gemset用于我的默认项目。但我注意到,初学者的默认宝石会提醒不同的非系统宝石。其中一些可以与相同的Gem模块相关,但具有不同的版本。

这种版本控制可能导致不同的奇怪错误和问题,发生在你身上的事情。如果你想使用一个默认的gems集(我想你是一个NOT rails-developer,根据你的个人资料),打开你的项目目录,然后在终端中执行:

rvm gemset empty ''
rvm use @default --default
bundle install