class Gem::Commands::InstallCommand

Gem installer command line tool

See ‘gem help install`

Public Class Methods

new ()
Calls superclass method Gem::Command::new
# File lib/rubygems/commands/install_command.rb, line 24
def initialize
  defaults = Gem::DependencyInstaller::DEFAULT_OPTIONS.merge({
    format_executable: false,
    lock: true,
    suggest_alternate: true,
    version: Gem::Requirement.default,
    without_groups: [],
  })

  defaults.merge!(install_update_options)

  super "install", "Install a gem into the local repository", defaults

  add_install_update_options
  add_local_remote_options
  add_platform_option
  add_version_option
  add_prerelease_option "to be installed. (Only for listed gems)"

  @installed_specs = []
end

Public Instance Methods

execute ()
# File lib/rubygems/commands/install_command.rb, line 148
def execute
  if options.include? :gemdeps
    install_from_gemdeps
    return # not reached
  end

  @installed_specs = []

  ENV.delete "GEM_PATH" if options[:install_dir].nil?

  check_version

  load_hooks

  exit_code = install_gems

  show_installed

  say update_suggestion if eligible_for_update?

  terminate_interaction exit_code
end