这个是不可能的,你的jar文件运行的载体是dos窗口,如果窗口真的关闭了,线程关闭,你的jar文件就停止运行了。
折衷的解决方式为,运行的dos窗口隐藏,
方法是编写vbs文件,步骤为:
在.bat文件" highlight="true">bat文件的同级目录下新建记事本文件,写如下代码:
Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c a.bat",vbhide
然后把记事本后缀名改为 vbs 保存,其中a.bat改为你的bat文件名。
其中vbhide是让dos窗口隐藏
但是有个问题,就是你的java被关闭后,cmd的进程依然存在,java进程也存在,
你可以用任务管理器看一下,可能有偏差,但是cmd进程一定存在。
不知道你为什么这么做,但还是尽量帮你一下吧。
@echo off
start javaw -jar "asm.jar"
你把BAT内容改为以下试试:
start java -jar test.jar