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

相关推荐
脸大是真的好~1 小时前
黑马JAVAWeb - Maven高级-分模块设计与开发-继承-版本锁定-聚合-私服
java
她说彩礼65万4 小时前
C# AutoResetEvent和ManualResetEvent
java·jvm·c#
roman_日积跬步-终至千里4 小时前
【Docker多节点部署】基于“配置即身份“理念的 Docker 多节点 StarRocks 高可用集群自动化部署方案
java·docker·微服务
先知后行。5 小时前
C/C++八股文
java·开发语言
Yeats_Liao5 小时前
时序数据库系列(五):InfluxDB聚合函数与数据分析
java·后端·数据分析·时序数据库
又是忙碌的一天6 小时前
Java IO流
java·开发语言
程序员buddha6 小时前
springboot-mvc项目示例代码
java·spring boot·mvc
不懂英语的程序猿7 小时前
【Java 工具类】Java通过 TCP/IP 调用斑马打印机(完整实现)
java
多多*8 小时前
分布式系统中的CAP理论和BASE理论
java·数据结构·算法·log4j·maven
sg_knight8 小时前
Docker 实战:如何限制容器的内存使用大小
java·spring boot·spring·spring cloud·docker·容器·eureka