您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Java执行Windows为什么批处理文件没有处理?

Java执行Windows为什么批处理文件没有处理?

现在输出挂在 waitFor()

使用Java从外部启动外部进程时,Runtime.exec必须读取该进程产生的任何输出,否则该进程可能会阻塞(来源:JavaDocs for java.lang.Process)。

ProcessBuilder改用,并调用redirectErrorStream以合并标准输出错误流,然后从中读取所有内容process.getInputStream()直到达到EOF。只有这样才能安全打电话waitFor

ProcessBuilder还将帮助解决空格问题,因为您必须自己将命令行拆分为单个单词

ProcessBuilder pb = new ProcessBuilder("cmd", "/c", file.getAbsolutePath());
java 2022/1/1 18:28:05 有433人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶