专业的JAVA编程教程与资源

网站首页 > java教程 正文

宝藏脚本!Windows快速启动Java应用服务,提升开发效率!

temp10 2024-10-29 16:39:04 java教程 14 ℃ 0 评论

以下是一个简单的 Windows批处理脚本,用于启动 Java 应用程序的 jar 包和杀死该应用程序的进程:

@echo off

rem 定义 Java 进程 ID 文件路径
set PID_FILE=app.pid

rem 启动 Java 应用程序
:start
    echo Starting Java process...
    start "" java -jar app.jar > app.log 2>&1
    tasklist /fi "WINDOWTITLE eq app.jar" | findstr "java.exe" > nul
    if errorlevel 1 (
        echo Failed to start Java process
        exit /b 1
    ) else (
        for /f "tokens=2" %%a in ('tasklist /fi "WINDOWTITLE eq app.jar" ^| findstr "java.exe"') do set JAVA_PID=%%a
        echo Java process started with PID %JAVA_PID%
        echo %JAVA_PID% > %PID_FILE%
    )

rem 杀死 Java 应用程序进程
:stop
    if exist %PID_FILE% (
        set /p JAVA_PID=<%PID_FILE%
        taskkill /pid %JAVA_PID% /f > nul
        del %PID_FILE%
        echo Java process stopped
    ) else (
        echo Java process is not running
    )

rem 根据命令参数执行对应操作
if "%1" == "start" goto start
if "%1" == "stop" goto stop

echo Usage: %0 {start^|stop}
exit /b 1

上述脚本中,使用 set 命令定义了 Java 进程 ID 文件路径 PID_FILE,并实现了两个标签 :start :stop,分别用于启动和杀死 Java 应用程序进程。

宝藏脚本!Windows快速启动Java应用服务,提升开发效率!

:start 标签中,使用 start 命令启动 Java 应用程序,并将输出重定向到文件 app.log 中;同时,使用 tasklist 命令检查进程列表中是否存在指定的 Java 进程,并通过 findstr 命令过滤出包含关键字 "java.exe" 的行。如果没有找到,则表示 Java 进程启动失败;否则,从 tasklist 命令输出结果中提取出 Java 进程的进程 ID,并将其写入到文件 %PID_FILE% 中以便后续停止应用程序时使用。

:stop 标签中,根据进程 ID 文件中的内容杀死 Java 应用程序进程,并删除进程 ID 文件。最后,使用 if 语句根据传入的命令参数执行对应的操作。

可以将上述脚本保存为批处理文件(app.bat),然后使用 start命令启动 Java 应用程序:

app.bat start

使用stop命令停止应用程序:

app.bat stop

注意:使用时,需要将文件名、应用程序 jar 包名称和应用程序入口类名称等信息修改为实际的值。

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表