Java 使用bat文件启动jar软件后,如何使命令行不可见?

Java 使用bat文件启动jar软件后,如何使命令行不可见?,java,batch-file,command-line,Java,Batch File,Command Line,我有一个启动jar文件的bat文件 path\to\java -jar software.jar 此命令在后台与软件一起启动命令行。我尝试了start“ABCD”cmd/k path\to\java-jar software.jar和start“ABCD”cmd/c path\to\java-jar software.jar,但两种方法都不起作用 软件发布后,如何使命令行不可见?前一天,我也遇到了这种问题 但在我的例子中,我使用 java -jar test.jar 运行此命令后,当我关闭c

我有一个启动jar文件的bat文件

path\to\java -jar software.jar
此命令在后台与软件一起启动命令行。我尝试了
start“ABCD”cmd/k path\to\java-jar software.jar
start“ABCD”cmd/c path\to\java-jar software.jar
,但两种方法都不起作用


软件发布后,如何使命令行不可见?

前一天,我也遇到了这种问题

但在我的例子中,我使用

java -jar test.jar
运行此命令后,当我关闭cmd jar文件时停止工作。。。所以我使用了一个技巧。。要将jar文件作为windows服务运行…,请使用以下命令

javaw -jar test.jar
运行此命令后,我安全地关闭cmd


因此,您可以尝试将java替换为javaw,这样您的java应用程序就可以独立于控制台窗口运行。
然后在批处理文件中放置一个出口,这可能会结束打开窗口的cmd。

这很有帮助,但我仍然需要关闭命令行。Windows命令处理器在批处理文件中等待执行
javaw.exe
,处理批处理文件,直到启动可执行文件(控制台或Windows GUI应用程序)终止了它自己。因此,根据*.jar文件中Java应用程序的运行时间,这并没有真正的帮助。最好的解决方案不是使用带有单个命令行的批处理文件,而是使用带有
javaw.exe
的快捷方式文件。否则,
start”“\path\to\javaw.exe”-jar software.jar
可以作为单独的进程启动
javaw.exe
,而无需等待其终止<代码>开始/?在cmd窗口中执行显示帮助。我认为使用bat文件不可能直接执行。您可以想到一个vbs文件,类似这样的文件不要使用批处理文件,而是使用一个快捷方式文件(*.lnk),该文件以完整路径
javaw.exe
开头,带有运行Java应用程序所需的参数。执行
javaw.exe
时未打开任何控制台窗口。