Rails 4.2 Ruby 2.2.1 Spring не запускается
Я только что сделал новую установку рельсов с использованием RailsInstaller Ruby 2.1
И после того, как я установил пакет и все прошло успешно, я попытался запустить Spring и получил следующую ошибку:
C:/RailsInstaller/Ruby2.1.0/lib/ruby/gems/2.1.0/gems/spring-1.3.3/lib/spring/sid.rb:33:in ``': No such file or directory
- ps -p 1108 -o sess= (Errno::ENOENT)
from C:/RailsInstaller/Ruby2.1.0/lib/ruby/gems/2.1.0/gems/spring-1.3.3/lib/spring/sid.rb:33:in `sid'
from C:/RailsInstaller/Ruby2.1.0/lib/ruby/gems/2.1.0/gems/spring-1.3.3/lib/spring/sid.rb:39:in `pgid'
from C:/RailsInstaller/Ruby2.1.0/lib/ruby/gems/2.1.0/gems/spring-1.3.3/lib/spring/server.rb:78:in `set_pgid'
from C:/RailsInstaller/Ruby2.1.0/lib/ruby/gems/2.1.0/gems/spring-1.3.3/lib/spring/server.rb:34:in `boot'
from C:/RailsInstaller/Ruby2.1.0/lib/ruby/gems/2.1.0/gems/spring-1.3.3/lib/spring/server.rb:14:in `boot'
from -e:1:in `<main>'
Вот как выглядит мой файл sid.rb
begin
# If rubygems is present, keep it out of the way when loading fiddle,
# otherwise if fiddle is not installed then rubygems will load all
# gemspecs in its (futile) search for fiddle, which is slow.
if respond_to?(:gem_original_require, true)
gem_original_require 'fiddle'
else
require 'fiddle'
end
rescue LoadError
end
module Spring
module SID
def self.fiddle_func
@fiddle_func ||= Fiddle::Function.new(
DL::Handle::DEFAULT['getsid'],
[Fiddle::TYPE_INT],
Fiddle::TYPE_INT
)
end
def self.sid
@sid ||= begin
if Process.respond_to?(:getsid)
# Ruby 2
Process.getsid
elsif defined?(Fiddle) and defined?(DL)
# Ruby 1.9.3 compiled with libffi support
fiddle_func.call(0)
else
# last resort: shell out
`ps -p #{Process.pid} -o sess=`.to_i
end
end
end
def self.pgid
Process.getpgid(sid)
end
end
end
Я предполагаю, что настоящая ошибка в том, что он не может получить sid здесь:
if Process.respond_to?(:getsid)
# Ruby 2
Process.getsid
Но я понятия не имею, что с этим делать. Я использую пружину 1.3.3, которая является последней версией.
Спасибо,
1 ответ
Ах, кажется, что весна не поддерживается на окнах. Просто перечитайте документы
Spring makes extensive use of Process.fork, so won't be able to provide a speed up on platforms which don't support forking (Windows, JRuby).