我使用Node.JS child_process来生成如下命令:
var spawn = require('child_process').spawn,
cwd = __dirname,
cmd = '/path/to/sencha app watch',
child = spawn(
'/bin/sh',
['-c', cmd],
{
cwd : cwd,
env : process.env
}
);
哪个有效,我可以看到这些过程:
> ps -ef | grep watch
502 9706 9705 0 12:01PM ttys001 0:00.00 /bin/bash /path/to/sencha app watch
502 9718 9706 0 12:01PM ttys001 0:24.80 /usr/bin/java -Xms128m -Xmx1024m -Dapple.awt.UIElement=true -jar /path/to/sencha.jar app watch
和child.pid是9706.如果我执行child.kill()发送任何信号,命令仍在运行。我需要杀死9718进程。有没有办法杀死java进程?
答案 0 :(得分:0)
我解决这个问题的方法是直接调用/ user / bin / java命令,现在我可以正确地终止进程。唯一的问题是必须有java的路径。