Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 使用rvm升级到ruby 1.9.3会破坏我的rails应用程序_Ruby On Rails_Ruby On Rails 3.1_Rvm_Ruby 1.9.3 - Fatal编程技术网

Ruby on rails 使用rvm升级到ruby 1.9.3会破坏我的rails应用程序

Ruby on rails 使用rvm升级到ruby 1.9.3会破坏我的rails应用程序,ruby-on-rails,ruby-on-rails-3.1,rvm,ruby-1.9.3,Ruby On Rails,Ruby On Rails 3.1,Rvm,Ruby 1.9.3,我已使用以下命令将ruby升级到rvm: rvm get head rvm install 1.9.3 rvm reload rvm use 1.9.3 --default 现在,当我运行rails s时,会收到以下错误消息: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:827:in `report_activate_error': Could not find Ruby

我已使用以下命令将ruby升级到rvm:

rvm get head
rvm install 1.9.3
rvm reload
rvm use 1.9.3 --default
现在,当我运行rails s时,会收到以下错误消息:

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:827:in `report_activate_error': Could not find RubyGem rails (>= 0) (Gem::LoadError)
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:261:in `activate'
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:68:in `gem'
from /usr/bin/rails:18

如果我运行哪个ruby、gem环境和ruby-v,我会得到一致的输出。有人能帮我理解我的申请出了什么问题吗

您是否尝试过运行
gem安装rails

将RVM与ruby gems一起使用意味着您可以在路径中为未安装的gems提供二进制文件(包括
rails
binary)

这就是您的错误


我希望
捆绑安装
gem-install-rails
能够解决您的问题。

您只需运行以下程序,就可以让应用程序重新运行:

$ bundle
安装您的文件依赖项。然后,您应该使用以下工具运行rails服务器:

$ bundle exec rails s
使用
bundle exec
以确保rails命令是从适合您的应用程序的rails gem运行的,这一点很重要

如果您想了解更多信息,Yehuda Katz有一篇详细的博文:

我运行了gem-install-rails,然后进行了bundle-install,但现在当我运行rails时,我的命令行出现了一个错误,并说我的用户模型中有一个以前没有的语法错误。(这是说在我的模型末尾出现了一个意外的关键字end,这对我来说毫无意义)我不知道是否与designe有冲突,或者我只是疯了。我想那是另一个问题。如果是“意外结束”错误,则应该在回溯显示的文件中。如果它在1.9.2中起作用,我想不出任何语法变化。尝试在2之间交换,并验证您没有意外添加语法错误。如何在这两个文件之间交换?不管怎样,我发现了问题,并且在我的一个文件中添加了逗号,该文件在1.9.2中没有中断,但在1.9.3中有中断。我删除了它,现在应用程序运行得很好。