gpt4 book ai didi

java - 为什么.bat中编写的命令在java中无限运行?

转载 作者:行者123 更新时间:2023-12-02 03:58:25 24 4
gpt4 key购买 nike

我有一个 .bat 文件,其作用是查找 java.util.concurrent.bat 的版本。 bat 文件中写入的命令是 java -version (这只是一个示例,不建议获取 java 版本的其他方法)

运行.bat文件的代码:

String path = "cmd /c start d:\\java.bat"; 
Runtime rn = Runtime.getRuntime();
Process pr = rn.exec(path);

bat 文件正在运行,但在循环中运行。但预期的行为是它应该打开命令提示符并仅运行命令一次

最佳答案

由于文件名与其中的命令相同,因此 java.bat 文件本身是从 java -version 命令调用的。只需重命名 .bat 文件,或使用 java.exe -version 即可解决该问题。

由于此类可执行文件和批处理文件的扩展名是可选的 (*),因此文件名本身可以单独用作命令,请阅读更多相关信息 here

(*) 查看 @Compo 的深入评论

<小时/>

Also here is an example Java Bat =)

关于java - 为什么.bat中编写的命令在java中无限运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57214555/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com