比如我写一个java类
class A{
public static void main(String[] args){
System.out.println("1");
Thread.sleep(5000);
System.out.println("2");
Thread.sleep(5000);
}
}
一个很简单的类,打印“1”,停五秒,打印“2”,停五秒,结束
现在我把这个类打在一个jar包里(jar只有这一个文件),然后把jar的.MF文件,中main指向这个类的main函数然后我双击这个可运行的jar文件,没有任何反映我希望是这样的效果,我双击这个文件,然后弹出cmd窗口,打印“1”,“2”,10秒后随java进程自动关闭,如果在打印中途
点击了窗口上的小叉子,也可以强行结束执行了一半的java进程可能直接点击jar文件不可行,也许需要写一个.bat脚本来实现,但是这个脚本不知道怎么写这是实验是这个意思,模拟tomcat的catalina.bat运行bootStart.java文件中的main函数,然后程序输出都打印到窗口
class A{
public static void main(String[] args){
System.out.println("1");
Thread.sleep(5000);
System.out.println("2");
Thread.sleep(5000);
}
}
一个很简单的类,打印“1”,停五秒,打印“2”,停五秒,结束
现在我把这个类打在一个jar包里(jar只有这一个文件),然后把jar的.MF文件,中main指向这个类的main函数然后我双击这个可运行的jar文件,没有任何反映我希望是这样的效果,我双击这个文件,然后弹出cmd窗口,打印“1”,“2”,10秒后随java进程自动关闭,如果在打印中途
点击了窗口上的小叉子,也可以强行结束执行了一半的java进程可能直接点击jar文件不可行,也许需要写一个.bat脚本来实现,但是这个脚本不知道怎么写这是实验是这个意思,模拟tomcat的catalina.bat运行bootStart.java文件中的main函数,然后程序输出都打印到窗口
------------------------------------------------------------------
问题解决了
其实我走了弯路,哎,不说了 直接给答案
---------
保证在同一个目录下面建立一个.bat文件,内容为
java -cp test.jar Test :END
其中test.jar是你要运行的jar文件,Test是指定定MainClass,不指定MainClass是会报错的
然后直接运行就可以了
.bat文件就是将命令行上的命令做成一个包,然后一直执行
因为JAVA本身并没有提供运行界面,所以就用命令行代替了
当关闭一个正在运行JAVA程序的命令行窗口的同时就相当于关闭了虚拟机
所以。