class Gem::Commands::BuildCommand
Public Class Methods
Source
# File lib/rubygems/commands/build_command.rb, line 12definitializesuper"build","Build a gem from a gemspec"add_platform_optionadd_option"--force","skip validation of the spec"do|_value,options|options[:force] =trueendadd_option"--strict","consider warnings as errors when validating the spec"do|_value,options|options[:strict] =trueendadd_option"-o","--output FILE","output gem with the given filename"do|value,options|options[:output] =valueendadd_option"-C PATH","Run as if gem build was started in <PATH> instead of the current working directory."do|value,options|options[:build_path] =valueenddeprecate_option"-C",version:"4.0",extra_msg:"-C is a global flag now. Use `gem -C PATH build GEMSPEC_FILE [options]` instead"end
Calls superclass method
Gem::Command::newPublic Instance Methods
Source
# File lib/rubygems/commands/build_command.rb, line 69defexecuteifbuild_path =options[:build_path]Dir.chdir(build_path) {build_gem }returnendbuild_gemend
Private Instance Methods
Source
# File lib/rubygems/commands/build_command.rb, line 80defbuild_gemgemspec =resolve_gem_nameifgemspecbuild_package(gemspec)elsealert_errorerror_messageterminate_interaction(1)endend
Source
# File lib/rubygems/commands/build_command.rb, line 91defbuild_package(gemspec)spec =Gem::Specification.load(gemspec)ifspecGem::Package.build(spec,options[:force],options[:strict],options[:output] )elsealert_error"Error loading gemspec. Aborting."terminate_interaction1endend
Source
# File lib/rubygems/commands/build_command.rb, line 116deferror_messageifgem_name"Couldn't find a gemspec file matching '#{gem_name}' in #{Dir.pwd}"else"Couldn't find a gemspec file in #{Dir.pwd}"endend
Source
# File lib/rubygems/commands/build_command.rb, line 124defgem_nameget_one_optional_argumentend
Source
# File lib/rubygems/commands/build_command.rb, line 106defresolve_gem_namereturnfind_gemspecunlessgem_nameifFile.exist?(gem_name)gem_nameelsefind_gemspec("#{gem_name}.gemspec")||find_gemspec(gem_name)endend