Java 为批处理文件的运行提供延迟
我以前问过这个问题。 我有以下要求Java 为批处理文件的运行提供延迟,java,Java,我以前问过这个问题。 我有以下要求 运行批处理文件 给一些时间运行批处理文件。 3.关闭批处理文件 我有以下不符合要求的代码。请告诉我哪里出了错 Runtime rt = Runtime.getRuntime(); Process pr = rt.exec(command); //pr.exitValue(); //wait(10000); pr.waitFor(); pr.destroy(); 我使
Runtime rt = Runtime.getRuntime();
Process pr = rt.exec(command);
//pr.exitValue();
//wait(10000);
pr.waitFor();
pr.destroy();
我使用了waitFor,但它不起作用。在执行批处理文件后,我如何能给予大约15分钟的延迟
谢谢一个建议:抓取输出和错误流,看看它们打印出了什么。您可能会看到批处理文件出现错误,使其返回的时间比您预期的要早。我不确定您想要什么,但是 睡眠(90万)
您可以等待15分钟。如果没有线程从批处理中读取stdIO,批处理可能会阻塞。即使你对它不感兴趣,你仍然会读它并丢弃它。那么您的等待工作会有更好的变化。您的问题没有提到在Java中给予延迟。您的意思是,延迟应该在Java程序执行后的批处理文件中。因此,您可以对其进行任意时间的配置。下面是一个20秒的示例:
@ECHO off
REM.-- End of application
:: do something here
GOTO :END
:: you could put functions here
:END
FOR /l %%a in (20,-1,1) do (TITLE %title% -- closing in %%as&ping -n 2 -w 1 127.0.0.1>NUL)
TITLE Press any key to close the application&ECHO.&GOTO:EOF
PAUSE>nul
String command=“cmd/C启动路径运行批处理文件”;Runtime rt=Runtime.getRuntime();进程pr=rt.exec(命令);