我使用ProcessBuilder从Java应用程序(主机)启动新进程(子进程)。事情是这样的:ProcessBulder加载进程但未启动它
ProcessBuilder processBuilder = createProcess(commandLine);
processBuilder.directory(new File(baseDir));
processBuilder.redirectErrorStream(true);
Process process = null;
try {
process = processBuilder.start();
} catch (Exception e) {
e.printStackTrace();
}
我看到子进程已经启动系统监视器,但它不能正常工作,除非我停止主机应用程序。更具体地说,子进程是一个服务器,并且在使用ProcessBuilder启动它之后,如果主机应用程序仍在运行,则它不响应请求。而且,服务器正在使用的端口仍然可用。如果我停止主机应用程序,服务器立即开始工作。有什么是我错过的或者这就是ProcessBuilder假设的工作方式? 非常感谢提前。
的[工艺被暂停,直到我关闭程序]可能的复制(https://stackoverflow.com/questions/44210123/process-is-being-paused-until-i-close -the-program) – msrd0 2017-05-27 12:10:06