无法安装rails 2.3.8

时间:2012-11-30 12:43:43

标签: ruby-on-rails rubygems rvm

我在ubuntu linux上安装了ruby ruby​​ 1.8.7(2011-02-18 patchlevel 334)[x86_64-linux],我正在尝试安装rails 2.3.8 gem,但我面临以下错误。

gem install rails --debug

 gem install rails --debug
Exception `NameError' at /usr/local/rvm/rubies/ruby-1.8.7-p334/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:177 - uninitialized constant Gem::Commands::InstallCommand
Exception `Errno::ETIMEDOUT' at /usr/local/rvm/rubies/ruby-1.8.7-p334/lib/ruby/1.8/net/http.rb:560 - Connection timed out - connect(2)
Exception `Gem::RemoteFetcher::FetchError' at /usr/local/rvm/rubies/ruby-1.8.7-p334/lib/ruby/site_ruby/1.8/rubygems/remote_fetcher.rb:246 - Errno::ETIMEDOUT: Connection timed out - connect(2) (http://gems.rubyforge.org/latest_specs.4.8.gz)
Exception `Gem::GemNotFoundException' at /usr/local/rvm/rubies/ruby-1.8.7-p334/lib/ruby/site_ruby/1.8/rubygems/dependency_installer.rb:237 - Could not find a valid gem 'rails' (>= 0) locally or in a repository
ERROR:  Could not find a valid gem 'rails' (>= 0) in any repository
Exception `Errno::ETIMEDOUT' at /usr/local/rvm/rubies/ruby-1.8.7-p334/lib/ruby/1.8/net/http.rb:560 - Connection timed out - connect(2)
Exception `Gem::RemoteFetcher::FetchError' at /usr/local/rvm/rubies/ruby-1.8.7-p334/lib/ruby/site_ruby/1.8/rubygems/remote_fetcher.rb:246 - Errno::ETIMEDOUT: Connection timed out - connect(2) (http://gems.rubyforge.org/latest_specs.4.8.gz)
ERROR:  While executing gem ... (Gem::RemoteFetcher::FetchError)
    Errno::ETIMEDOUT: Connection timed out - connect(2) (http://gems.rubyforge.org/latest_specs.4.8.gz)
    /usr/local/rvm/rubies/ruby-1.8.7-p334/lib/ruby/site_ruby/1.8/rubygems/remote_fetcher.rb:246:in `fetch_path'
    /usr/local/rvm/rubies/ruby-1.8.7-p334/lib/ruby/site_ruby/1.8/rubygems/spec_fetcher.rb:269:in `load_specs'
    /usr/local/rvm/rubies/ruby-1.8.7-p334/lib/ruby/site_ruby/1.8/rubygems/spec_fetcher.rb:231:in `list'
    /usr/local/rvm/rubies/ruby-1.8.7-p334/lib/ruby/site_ruby/1.8/rubygems/spec_fetcher.rb:227:in `each'
    /usr/local/rvm/rubies/ruby-1.8.7-p334/lib/ruby/site_ruby/1.8/rubygems/spec_fetcher.rb:227:in `list'
    /usr/local/rvm/rubies/ruby-1.8.7-p334/lib/ruby/site_ruby/1.8/rubygems/spec_fetcher.rb:189:in `suggest_gems_from_name'
    /usr/local/rvm/rubies/ruby-1.8.7-p334/lib/ruby/site_ruby/1.8/rubygems/command.rb:160:in `show_lookup_failure'
    /usr/local/rvm/rubies/ruby-1.8.7-p334/lib/ruby/site_ruby/1.8/rubygems/commands/install_command.rb:132:in `execute'
    /usr/local/rvm/rubies/ruby-1.8.7-p334/lib/ruby/site_ruby/1.8/rubygems/commands/install_command.rb:115:in `each'
    /usr/local/rvm/rubies/ruby-1.8.7-p334/lib/ruby/site_ruby/1.8/rubygems/commands/install_command.rb:115:in `execute'
    /usr/local/rvm/rubies/ruby-1.8.7-p334/lib/ruby/site_ruby/1.8/rubygems/command.rb:278:in `invoke'
    /usr/local/rvm/rubies/ruby-1.8.7-p334/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:147:in `process_args'
    /usr/local/rvm/rubies/ruby-1.8.7-p334/lib/ruby/site_ruby/1.8/rubygems/command_manager.rb:117:in `run'
    /usr/local/rvm/rubies/ruby-1.8.7-p334/lib/ruby/site_ruby/1.8/rubygems/gem_runner.rb:65:in `run'
    /usr/local/rvm/rubies/ruby-1.8.7-p334/bin/gem:34

    RubyGems Environment:
  - RUBYGEMS VERSION: 1.8.24
  - RUBY VERSION: 1.8.7 (2011-02-18 patchlevel 334) [x86_64-linux]
  - INSTALLATION DIRECTORY: /usr/local/rvm/gems/ruby-1.8.7-p334
  - RUBY EXECUTABLE: /usr/local/rvm/rubies/ruby-1.8.7-p334/bin/ruby
  - EXECUTABLE DIRECTORY: /usr/local/rvm/gems/ruby-1.8.7-p334/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86_64-linux
  - GEM PATHS:
     - /usr/local/rvm/gems/ruby-1.8.7-p334
     - /usr/local/rvm/gems/ruby-1.8.7-p334@global
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
     - :sources => ["http://gems.rubyforge.org/", "http://rubygems.org"]
  - REMOTE SOURCES:
     - http://gems.rubyforge.org/
     - http://rubygems.org

1 个答案:

答案 0 :(得分:1)

我已使用gem install的proxy命令选项修复了此问题。它具有以下格式:

$ gem install --http-proxy http://201.187.107.19:8080 rails

注意,IP地址和端口号是指代理。您应该搜索代理列表并使用其中一个代理。

这是包含代理的网站:http://www.cybersyndrome.net/pla5.html

此外,我必须尝试7或8个不同的代理才能成功。不要放弃。

注意,您也可以看到以下错误:

ERROR:  While executing gem ... (Gem::DependencyError)
    Unable to resolve dependencies: rails requires activesupport (= 3.2.8), actionpack (= 3.2.8), activerecord (= 3.2.8), activeresource (= 3.2.8), actionmailer (= 3.2.8), railties (= 3.2.8), bundler (~> 1.0)

不要放弃并继续列表中的下一个代理。祝你好运。