@echo off setlocal set JAR=D:\IDE-WorkSpace\New-JW\backend\roomroot-admin\target\roomroot-admin.jar set JAVA_EXE=D:\Java\jdk-17.0.0.1\bin\java.exe set LOGDIR=D:\IDE-WorkSpace\New-JW\deploy\logs set JAVA_OPTS=-Xms256m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m if not exist "%JAR%" ( echo JAR not found: %JAR% exit /b 1 ) if not exist "%LOGDIR%" mkdir "%LOGDIR%" for /f "tokens=1" %%p in ('"D:\Java\jdk-17.0.0.1\bin\jps.exe" -l ^| findstr /I "roomroot-admin.jar"') do ( echo Stopping existing backend PID %%p taskkill /F /PID %%p >nul 2>&1 ) echo Starting backend JAR in background, independent of IDEA... powershell -NoProfile -WindowStyle Hidden -Command "Start-Process -FilePath '%JAVA_EXE%' -ArgumentList '%JAVA_OPTS% -jar \"%JAR%\"' -WorkingDirectory 'D:\IDE-WorkSpace\New-JW\backend\roomroot-admin\target' -RedirectStandardOutput '%LOGDIR%\backend.out.log' -RedirectStandardError '%LOGDIR%\backend.err.log' -WindowStyle Hidden" echo Backend started. Logs: %LOGDIR%\backend.out.log endlocal