【问题标题】:ubuntu ruby on rails installationubuntu ruby​​ on rails 安装
【发布时间】:2010-08-08 04:04:04
【问题描述】:

我在 ubuntu 10 上安装了 RoR,使用了各种我可以在互联网上找到的方法,“sudo apt-get”或“sudo gem install”,通过运行“gem list”,我可以看到它们都是最新的版本:

*** 当地宝石 *** actionmailer (2.3.8) 动作包 (2.3.8) 活动记录(2.3.8) 主动资源(2.3.8) 主动支持 (2.3.8) 快速线程(1.0.7) mysql (2.8.1) 乘客 (2.2.15) 机架 (1.1.0) 导轨 (2.3.8) 耙子 (0.8.7) rubygems 更新 (1.3.7)

但是当我通过运行“rails samplecode”创建一个 ror 应用程序,然后运行“script/about”时,它总是显示:

关于应用程序的环境 Ruby 版本 1.8.7 (x86_64-linux) RubyGems 1.3.5 版 导轨版本 2.2.3 活动记录版本 2.2.3 行动宝盒 2.2.3 版 活动资​​源版本 2.2.3 行动邮件程序版本 2.2.3 主动支持版本 2.2.3 Edge Rails 版本未知 应用程序根目录 /home/kc/Projects/samplecode 环境发展 数据库适配器 mysql

为什么这两个设置不同?如何强制应用程序使用本地 gem(最新版本)?谢谢。

【问题讨论】:

  • 尝试运行which gemwhich railswhich ruby。查看您在屏幕上看到的内容并将其发布在此处。

标签: ruby-on-rails


【解决方案1】:

Ubuntu (aptitude/apt-get) 在 /var/lib/gems/1.8 中安装 gem。当您手动运行 gem install 时,您可能会将它们安装在 /usr/lib/ruby/gems/1.8 中。

运行“gem env”并查看 gem 路径是什么。

如果您设置 GEM_HOME 环境变量 (GEM_HOME=/usr/lib/ruby/gems/1.8),您可以让您的应用程序在那里查找。

或者,您可以通过将 config.gem 行放入 environment.rb 并运行 rake gems:unpack:dependencies 在应用程序的供应商目录中安装所需的 gem(包括 rails)。

【讨论】:

    【解决方案2】:

    卸载 apt-get 版本的 Rails:

    sudo apt-get remove rails
    

    然后使用 gem 再次安装 Rails:

    sudo gem install rails
    

    【讨论】:

    • 我认为应该是sudo apt-get remove rails,而不是sudo apt-get uninstall rails.