@echo off setlocal enabledelayedexpansion REM ========== All-in-one: git pull -> clean -> package -> run ========== REM Usage: all-in-one.bat [mode] REM mode: fast (default) = skip tests, parallel build REM full = run tests, single-threaded
set "JAR_NAME=xxx-admin.jar" set "JAVA_OPTS=-Xms256m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED" set "MAVEN_THREADS=4C"
echo [4/4] Running application in admin target directory... cd /d "%~dp0../xxx-admin/target" iferrorlevel1 ( echo ERROR: Failed to cd into ../xxx-admin/target goto end )
ifnotexist "%JAR_NAME%" ( echo ERROR: %JAR_NAME%not found in%CD% goto end )
echo Running %JAR_NAME% ... java -jar %JAVA_OPTS% "%JAR_NAME%" iferrorlevel1 ( echo Application exited with error code %errorlevel%. goto end )
:end popd echo. echo Script finished. Press any key to exit... pause >nul
@echo off setlocal enabledelayedexpansion REM ================== 配置区 ================== set "BASE_DIR=%~dp0" set "LOCK_FILE=%TEMP%\auto_update.lock" set "LOG_FILE=%BASE_DIR%auto_update.log" set "JAR_NAME=xxx-admin.jar" set "RUN_SCRIPT=%BASE_DIR%run-service.bat" set "BRANCH=dev"
echo ================================================== >> "%LOG_FILE%" echo [%DATE%%TIME%] Auto update started >> "%LOG_FILE%" REM ================== 防止并发执行 ================== ifexist "%LOCK_FILE%" ( echo [%DATE%%TIME%] Another instance is running, exiting. >> "%LOG_FILE%" exit /b ) echo > "%LOCK_FILE%"