Windows 下启动 jar 后隐藏cmd 窗口

编写BAT脚本文件如下

  • 方法一
bat 复制代码
@echo off
# 获取当前执行脚本的目录
set jarPath=%~dp0
# 使用 javaw 启动一个jar
start javaw -jar %jarPath%xxx.jar
  • 方法二
bat 复制代码
@echo off
# 获取当前执行脚本的目录
set jarPath=%~dp0
# 使用vb脚本方式处理 cmd 窗口
%1 mshta vbscript:CreateObject("WScript.Shell").Run("%~s0 ::",0,FALSE)(window.close)&&exit
# 使用 java 启动一个jar
java -jar %jarPath%xxx.jar >log.log 2>$1 &
exit

关闭java进程脚本

bat 复制代码
@echo off
# 设置要终止的java 程序名称(通常是jar包名称)
set appName=xxx
# 通过 jps 命令找到相关 jar 程序的进程 id
for /F %%i in ('jps ^| findstr %appName%') do (set p=%%i)
# 终止找到的进程id
taskkill /f /pid %p%
# 打印信息
echo 'kill %appName%'

参考资料

bat/cmd将命令执行的结果赋值给变量
Windows启动和停止jar包命令
windows 批处理文件bat中当前目录。
java 与 javaw 区别

相关推荐
好好学Java吖1 小时前
【二分题目】
java·开发语言
鲤籽鲲2 小时前
C# 中 [MethodImpl(MethodImplOptions.Synchronized)] 的使用详解
java·开发语言·c#
逆风局?2 小时前
Java基础——分层解耦——IOC和DI入门
java·开发语言
ybq195133454312 小时前
javaEE-8.JVM(八股文系列)
java·jvm·java-ee
飞翔的佩奇3 小时前
Java项目: 基于SpringBoot+mybatis+maven+mysql实现的疾病防控综合管理系统(含源码+数据库+毕业论文)
java·数据库·spring boot·mysql·spring·毕业设计·疾病防控
power-辰南3 小时前
技术架构师成长路线(2025版)
java·架构师·学习路线·技术专家
二十雨辰3 小时前
[Java基础]面向对象
java·开发语言
栗豆包4 小时前
w187社区养老服务平台的设计与实现
java·spring boot·后端·spring·tomcat
violin-wang4 小时前
如何在Intellij IDEA中识别一个文件夹下的多个Maven module?
java·spring boot·spring·maven·intellij-idea
假客套4 小时前
Java小白入门教程:LinkedList
java·开发语言