我对 Ubuntu、Ruby 和 Rails 还不太熟悉。我正在努力学习第一个 Rails 指南在该指南的中途,我将 Ubuntu 版本 11 升级到了 Ubuntu 版本 12。在使用版本 11 时,我通过以下方式安装了 Rails:
gem install rails
然后运行:
rails --version
我几乎确信输出的内容如下:
Rails 3.2.7
当我跑步时:
rails server
Webrick 服务器启动了,我能够查看我的入门页面。我还能继续学习教程。然后,我遇到了一些问题,一些软件包丢失/损坏,在尝试修复该问题的过程中,我将 Ubuntu 升级到了版本 12。
登录 Ubuntu 12 版后,我尝试继续本教程。这次我运行
rails server
这发生过:
create
create app/controllers
create app/helpers
create app/models
create app/views/layouts
create config/environments
create config/initializers
create config/locales
create db
create doc
create lib
create lib/tasks
create log
create public/images
create public/javascripts
create public/stylesheets
create script/performance
create test/fixtures
create test/functional
create test/integration
create test/performance
create test/unit
create vendor
create vendor/plugins
create tmp/sessions
create tmp/sockets
create tmp/cache
create tmp/pids
create Rakefile
create README
create app/controllers/application_controller.rb
create app/helpers/application_helper.rb
create config/database.yml
create config/routes.rb
create config/locales/en.yml
create db/seeds.rb
create config/initializers/backtrace_silencers.rb
create config/initializers/inflections.rb
create config/initializers/mime_types.rb
create config/initializers/new_rails_defaults.rb
create config/initializers/session_store.rb
create config/initializers/cookie_verification_secret.rb
create config/environment.rb
create config/boot.rb
create config/environments/production.rb
create config/environments/development.rb
create config/environments/test.rb
create script/about
create script/console
create script/dbconsole
create script/destroy
create script/generate
create script/runner
create script/server
create script/plugin
create script/performance/benchmarker
create script/performance/profiler
create test/test_helper.rb
create test/performance/browsing_test.rb
create public/404.html
create public/422.html
create public/500.html
create public/index.html
create public/favicon.ico
create public/robots.txt
create public/images/rails.png
create public/javascripts/prototype.js
create public/javascripts/effects.js
create public/javascripts/dragdrop.js
create public/javascripts/controls.js
create public/javascripts/application.js
create doc/README_FOR_APP
create log/server.log
create log/production.log
create log/development.log
create log/test.log
create vendor/rails
我尝试研究发生了什么,结果看起来是因为 Rails 版本太旧。我运行了以下命令:
rails --version
..得到了这个:
Rails 2.3.14
我想可能是 Rails 以某种方式降级了,所以我运行了这个:
gem install rails
并得到这个:
Successfully installed rails-3.2.7
1 gem installed
Installing ri documentation for rails-3.2.7...
Installing RDoc documentation for rails-3.2.7...
我认为它必须被修复,因此我再次尝试了 Rails 3 应该能够做的事情,并得到了与以前相同的结果,因此我运行了这个:
rails --version
并得到这个:
Rails 2.3.14
我又重复了几次,结果还是一样。我尝试研究为什么会发生这种情况,但到目前为止,我什么也没想出来。看起来我可以安装 Rails 3,但这并不能改变 Ubuntu 12 认为 Rails 2 已安装的事实。它的反应也好像 Rails 2 已安装一样,似乎没有什么能改变这一点。
如果 Ubuntu 告诉我刚刚安装了 Rails 3,为什么它会认为已经安装了 Rails 2?
其他详细信息:
- 我正在使用 Zsh 终端。
- 我在需要的地方使用了 sudo,即使我没有在这里写
- 我在 VMware Workstation 8 中运行 Ubuntu
- 我在 Windows 7 中运行 VMware Workstation 8
- 我尝试在全新的虚拟机中安装 Ubuntu 12,但遇到了同样的问题。
答案1
因为你安装了存储库中预构建的 2.3.14 rails 软件包之一,此外还通过以下方式安装了 Rails 3.2.7:宝石:-)
- 以某种方式,您直接安装了其中一个软件包或者将其作为依赖项安装:
rails - 基于 ruby 的 MVC 框架,适用于 Web 应用程序开发 ruby-rails-2.3 - 基于 ruby 的 MVC 框架,适用于 Web 应用程序开发
apt-cache show rails
告诉我们它是...Version: 2.3.14.1
从头开始,以下步骤成功安装 3.2.7 (提供详细日志):
sudo apt-get 安装 rubygems sudo gem 安装 rails #...稍等片刻... $ rails --version Rails 3.2.7
在您现有的系统上,我建议您尝试以下操作,看看是否可以删除 2.3.14 并让 3.2.7 作为默认系统运行:
sudo apt-get 删除 rails ruby-rails\* sudo apt-get 自动删除 sudo apt-get--重新安装安装 rubygems sudo gem 安装 rails