发布网友 发布时间:2022-04-23 15:15
共1个回答
热心网友 时间:2023-10-05 04:31
是不是想直接用bat运行java程序,运行结束时不直接退出让你看得到结果?
方法:用CMD的“pause”命令让CMD窗口先暂停后按任意键再退出
示例代码:(Test.java文件)
import java.util.Scanner;(runTest.bat文件):
@echo offjava文件编译好之后,测试结果:
在CMD窗口中用命令运行的:
直接双击bat文件运行的:
此时运行结果就会给你看(我猜你的程序没有正常运行说的就是看不到结果吧。。。)
为什么两个窗口的标题会不一样?
第一种运行方式是在已打开的CMD窗口中以交互的方式执行一个程序,该CMD窗口占一个进程,CMD执行普通命令的方式是不开进程的,是直接在原来的进程中执行命令,所以,如果该命令没有完成,该CMD窗口为了表示此时执行的是某个命令而不是等待用户输入命令,所以该CMD窗口标题才会有命令出现。
而第二种运行方式是直接运行BAT脚本,该脚本创建的CMD窗口只为了这个脚本而存在,所以不需要在标题中提示当前的执行的命令(脚本名字就更不用说了),每次双击运行一个BAT脚本其实都是运行系统Windows目录(比如C:\Windows)下的system32\cmd.exe程序,并且以双击的脚本完整路径作为参数传递给它,它才能执行相应脚本。所以标题总是“C:\windows\system32\cmd.exe”