$ rails server ... undefined方法`gem'for main:Object(NoMethodError)

时间:2012-08-22 03:58:41

标签: ruby-on-rails-3

我是Rails的新手试图完成本教程,但我可以开始。 http://ruby.railstutorial.org/ruby-on-rails-tutorial-book#sec-rails_server

我在步骤1.2.5

我应该使用:$ rails server

启动服务器

每当我尝试运行任何rails命令时,我都会收到此错误。

localhost:first_app home$ rails server
/usr/bin/rails:22: undefined method `gem' for main:Object (NoMethodError)

运行rails命令曾经工作,因为我过去已经完成了其他书籍的其他教程。但是,在本教程的某些步骤中,有些东西搞砸了。

编辑我的bash_profile是否可能导致此问题?

我的bash_profile现在看起来像这样:

export PATH=/bin:/usr/bin:"$PATH"
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"  # This loads RVM into a shell session. 

我添加了这一行:导出PATH = / bin:/ usr / bin:“$ PATH”按照步骤清单1.1中的说明操作。创建gem配置文件。

我不确定这是否有帮助,但如果我输入:

$ which rails

我明白了:

/Users/home/.rvm/gems/ruby-1.9.3-p194@rails3tutorial2ndEd/bin/rails

3 个答案:

答案 0 :(得分:0)

你安装了宝石吗?输入:

which gem

看看你得到了什么。如果您没有宝石或错误的版本,请按照以下说明操作:http://ruby.railstutorial.org/ruby-on-rails-tutorial-book#sec-install_rubygems

答案 1 :(得分:0)

输入

$  rvm use 1.9.3@rails3tutorial2ndEd --create --default. 

允许我继续。

答案 2 :(得分:0)

我在ubuntu下遇到了类似的问题。我通过更改gnome-terminal设置https://rvm.io/integration/gnome-terminal

来修复它