提交 591eaf3b 编写于 作者: C Carl Lerche

Get apps generated with working again.

上级 2ca93403
......@@ -7,7 +7,7 @@
:Port => 3000,
:Host => "0.0.0.0",
:environment => (ENV['RAILS_ENV'] || "development").dup,
:config => Rails.root + "/config.ru",
:config => "#{Rails.root}/config.ru",
:detach => false,
:debugger => false
}
......
......@@ -10,38 +10,33 @@ module Rails
class << self
def boot!
unless booted?
preinitialize
pick_boot.run
root = File.expand_path('../..', __FILE__)
booter = File.exist?("#{root}/vendor/rails") ? VendorBoot : GemBoot
booter.new(root).run
end
end
def booted?
defined? Rails::Initializer
end
def pick_boot
(vendor_rails? ? VendorBoot : GemBoot).new
end
def vendor_rails?
File.exist?("#{RAILS_ROOT}/vendor/rails")
end
def preinitialize
load(preinitializer_path) if File.exist?(preinitializer_path)
end
def preinitializer_path
"#{RAILS_ROOT}/config/preinitializer.rb"
end
end
class Boot
def initialize(root)
@root = root
end
def run
preinitialize
set_load_paths
load_initializer
end
def preinitialize
path = "#{@root}/config/preinitializer.rb"
load(path) if File.exist?(path)
end
def set_load_paths
%w(
actionmailer/lib
......@@ -60,7 +55,7 @@ def set_load_paths
end
def framework_root_path
defined?(::RAILS_FRAMEWORK_ROOT) ? ::RAILS_FRAMEWORK_ROOT : "#{RAILS_ROOT}/vendor/rails"
defined?(::RAILS_FRAMEWORK_ROOT) ? ::RAILS_FRAMEWORK_ROOT : "#{@root}/vendor/rails"
end
end
......@@ -85,13 +80,13 @@ def install_gem_spec_stubs
class GemBoot < Boot
def load_initializer
self.class.load_rubygems
load_rubygems
load_rails_gem
require 'rails'
end
def load_rails_gem
if version = self.class.gem_version
if version = gem_version
gem 'rails', version
else
gem 'rails'
......@@ -101,43 +96,41 @@ def load_rails_gem
exit 1
end
class << self
def rubygems_version
Gem::RubyGemsVersion rescue nil
end
def rubygems_version
Gem::RubyGemsVersion rescue nil
end
def gem_version
if defined? RAILS_GEM_VERSION
RAILS_GEM_VERSION
elsif ENV.include?('RAILS_GEM_VERSION')
ENV['RAILS_GEM_VERSION']
else
parse_gem_version(read_environment_rb)
end
def gem_version
if defined? RAILS_GEM_VERSION
RAILS_GEM_VERSION
elsif ENV.include?('RAILS_GEM_VERSION')
ENV['RAILS_GEM_VERSION']
else
parse_gem_version(read_environment_rb)
end
end
def load_rubygems
min_version = '1.3.2'
require 'rubygems'
unless rubygems_version >= min_version
$stderr.puts %Q(Rails requires RubyGems >= #{min_version} (you have #{rubygems_version}). Please `gem update --system` and try again.)
exit 1
end
rescue LoadError
$stderr.puts %Q(Rails requires RubyGems >= #{min_version}. Please install RubyGems and try again: http://rubygems.rubyforge.org)
def load_rubygems
min_version = '1.3.2'
require 'rubygems'
unless rubygems_version >= min_version
$stderr.puts %Q(Rails requires RubyGems >= #{min_version} (you have #{rubygems_version}). Please `gem update --system` and try again.)
exit 1
end
def parse_gem_version(text)
$1 if text =~ /^[^#]*RAILS_GEM_VERSION\s*=\s*["']([!~<>=]*\s*[\d.]+)["']/
end
rescue LoadError
$stderr.puts %Q(Rails requires RubyGems >= #{min_version}. Please install RubyGems and try again: http://rubygems.rubyforge.org)
exit 1
end
private
def read_environment_rb
File.read("#{RAILS_ROOT}/config/environment.rb")
end
def parse_gem_version(text)
$1 if text =~ /^[^#]*RAILS_GEM_VERSION\s*=\s*["']([!~<>=]*\s*[\d.]+)["']/
end
private
def read_environment_rb
File.read("#{@root}/config/environment.rb")
end
end
end
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册