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 区别

相关推荐
2501_9262279415 分钟前
UDP网络编程:【Java】无连接通信到Socket实战(二)
java·网络·udp
Sunny_yiyi27 分钟前
Java根据模版导出PDF文件
java·开发语言·pdf
麦兜*29 分钟前
MongoDB 与 GraphQL 结合:现代 API 开发新范式
java·数据库·spring boot·mongodb·spring·maven·graphql
shan&cen32 分钟前
Day02 集合 | 30. 串联所有单词的子串、146. LRU 缓存、811. 子域名访问计数
java·数据结构·算法·缓存
ITMan彪叔1 小时前
Java MQTT 主流开发方案对比
java·后端
召摇1 小时前
Java 21到25的核心API演进总结
java·后端
知其然亦知其所以然1 小时前
SpringAI 玩转 OCI GenAI:这次我们聊聊 Cohere 聊天模型
java·后端·spring
金銀銅鐵1 小时前
[Java] 观察 CompactStrings 选项的影响
java·后端
是2的10次方啊1 小时前
🎯 HashMap源码深度解析:从"图书馆"到"智能仓库"的进化史
java