switch to posix-spawn for jruby
This commit is contained in:
@@ -2,6 +2,10 @@ source "http://rubygems.org"
|
||||
|
||||
gemspec
|
||||
|
||||
platform :jruby do
|
||||
gem "posix-spawn", "~> 0.3.6"
|
||||
end
|
||||
|
||||
group :development do
|
||||
gem 'parka'
|
||||
gem 'rake'
|
||||
|
||||
@@ -24,6 +24,7 @@ GEM
|
||||
crack
|
||||
rest-client
|
||||
thor
|
||||
posix-spawn (0.3.6)
|
||||
rake (0.9.2.2)
|
||||
rcov (0.9.8)
|
||||
rcov (0.9.8-java)
|
||||
@@ -57,6 +58,7 @@ DEPENDENCIES
|
||||
fakefs (~> 0.3.2)
|
||||
foreman!
|
||||
parka
|
||||
posix-spawn (~> 0.3.6)
|
||||
rake
|
||||
rcov (~> 0.9.8)
|
||||
ronn
|
||||
|
||||
+2
-2
@@ -19,8 +19,8 @@ Gem::Specification.new do |gem|
|
||||
gem.add_dependency 'term-ansicolor', '~> 1.0.7'
|
||||
gem.add_dependency 'thor', '>= 0.13.6'
|
||||
|
||||
if RUBY_PLATFORM == "java" || ENV["JRUBY"]
|
||||
gem.add_dependency "spoon", "~> 0.0.1"
|
||||
if ENV["JRUBY"]
|
||||
gem.add_dependency "posix-spawn", "~> 0.3.6"
|
||||
gem.platform = Gem::Platform.new("java")
|
||||
end
|
||||
end
|
||||
|
||||
@@ -34,8 +34,10 @@ private
|
||||
reader, writer = IO.pipe
|
||||
command = replace_command_env(command)
|
||||
pid = if jruby?
|
||||
require "spoon"
|
||||
Spoon.spawnp Foreman.runner, "-d", basedir, command
|
||||
require "posix/spawn"
|
||||
POSIX::Spawn.spawn(Foreman.runner, "-d", basedir, command, {
|
||||
:out => writer, :err => writer
|
||||
})
|
||||
else
|
||||
fork do
|
||||
trap("INT", "IGNORE")
|
||||
|
||||
Reference in New Issue
Block a user