| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 | @echo off@chcp 65001 >nulsetlocal enabledelayedexpansionecho ================================echo  HFLN portal Service Deployment Scriptecho ================================:: Configuration section - Please modify the following configurations according to actual situationset REMOTE_HOST=43.137.10.199set REMOTE_USER=chejianzhengset REMOTE_PASSWORD=Hfln666888set REMOTE_PATH=/work/portalset JAR_NAME=portal-service-boot.jarset START_SCRIPT=hfln-portal-service.shwhere mvn >nul 2>nulif %errorlevel% neq 0 (    echo Error: Maven not found, please install Maven and configure environment variables    pause    exit /b 1)echo.echo [1/4] Executing mvn clean package...call mvn clean package -Dmaven.test.skip=trueif %errorlevel% neq 0 (    echo Error: Maven build failed    pause    exit /b 1)echo.echo [2/4] Searching for built jar package...set JAR_PATH=for /f "delims=" %%i in ('dir "portal-service-server\target\portal-service-boot.jar" /b /s 2^>nul') do (    set JAR_PATH=%%i)if "!JAR_PATH!"=="" (    echo Error: Built jar package not found    pause    exit /b 1)echo Found jar package: !JAR_PATH!echo.echo [3/4] Cleaning up old jar packages on remote server...for /f "tokens=* USEBACKQ" %%a in (`powershell "Get-Date -Format yyyyMMddHHmmss"`) do (    set "datestamp=%%a")echo. | plink -ssh -pw %REMOTE_PASSWORD% %REMOTE_USER%@%REMOTE_HOST% "cd %REMOTE_PATH% && if [ -f %JAR_NAME% ]; then mv %JAR_NAME% portal-service-boot-%datestamp%.jar; echo 'Renamed old jar package'; else echo 'Old jar package not found'; fi"echo. | plink -ssh -pw %REMOTE_PASSWORD% %REMOTE_USER%@%REMOTE_HOST% "cd %REMOTE_PATH% && ls -t *.jar | tail -n +4 | xargs -r rm && echo 'Cleaned up old backups, kept latest 3 jar packages'"echo Cleanup completed, kept the latest 3 jar package backupsecho.echo [4/4] Pushing jar package to server...if not exist "pscp.exe" (    echo Warning: pscp.exe not found, trying to use system installed version...)pscp -pw %REMOTE_PASSWORD% "!JAR_PATH!" %REMOTE_USER%@%REMOTE_HOST%:%REMOTE_PATH%/%JAR_NAME%if %errorlevel% neq 0 (    echo Error: Failed to push jar package to server    pause    exit /b 1)echo.echo [5/5] Executing remote startup script...echo. | plink -ssh -pw %REMOTE_PASSWORD% %REMOTE_USER%@%REMOTE_HOST% "cd %REMOTE_PATH% && sudo ./%START_SCRIPT% restart"if %errorlevel% neq 0 (    echo Warning: Remote startup script execution may have problems)echo.echo Deployment completed!pause
 |