| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126 |
- @echo off
- chcp 65001 >nul 2>&1
- setlocal
- :: ============================================
- :: 服务管理中心 - 构建 + 打包 + 运行 一键脚本
- :: ============================================
- set "SCRIPT_DIR=%~dp0"
- set "SCRIPT_DIR=%SCRIPT_DIR:~0,-1%"
- :: 支持参数: run / build / clean / help
- set "ACTION=%~1"
- if "%ACTION%"=="" set "ACTION=run"
- if "%ACTION%"=="help" goto :usage
- if "%ACTION%"=="-h" goto :usage
- if "%ACTION%"=="--help" goto :usage
- echo.
- echo ============================================
- echo 服务管理中心 - %ACTION%
- echo ============================================
- echo.
- :: ---------- 检查环境 ----------
- where java >nul 2>&1
- if %errorlevel% neq 0 (
- echo [ERROR] 未找到 java,请确保 Java 17+ 已安装并加入 PATH
- exit /b 1
- )
- where mvn >nul 2>&1
- if %errorlevel% neq 0 (
- echo [ERROR] 未找到 mvn,请确保 Maven 已安装并加入 PATH
- exit /b 1
- )
- where node >nul 2>&1
- if %errorlevel% neq 0 (
- echo [ERROR] 未找到 node,请确保 Node.js 18+ 已安装并加入 PATH
- exit /b 1
- )
- :: ---------- 清理 ----------
- if "%ACTION%"=="clean" (
- echo [1/3] 清理前端构建产物...
- if exist "%SCRIPT_DIR%\frontend\dist" rmdir /s /q "%SCRIPT_DIR%\frontend\dist"
- if exist "%SCRIPT_DIR%\backend\src\main\resources\static" rmdir /s /q "%SCRIPT_DIR%\backend\src\main\resources\static"
- echo [2/3] 清理后端构建产物...
- if exist "%SCRIPT_DIR%\backend\target" rmdir /s /q "%SCRIPT_DIR%\backend\target"
- echo [3/3] 清理运行时数据...
- if exist "%SCRIPT_DIR%\data" rmdir /s /q "%SCRIPT_DIR%\data"
- echo.
- echo [DONE] 清理完成
- exit /b 0
- )
- :: ---------- 构建前端 ----------
- echo [1/4] 安装前端依赖...
- cd /d "%SCRIPT_DIR%\frontend"
- call npm install --silent 2>nul
- if %errorlevel% neq 0 (
- echo [ERROR] 前端依赖安装失败
- exit /b 1
- )
- echo [2/4] 构建前端...
- call npx vite build
- if %errorlevel% neq 0 (
- echo [ERROR] 前端构建失败
- exit /b 1
- )
- echo [3/4] 复制前端产物到后端静态资源目录...
- if exist "%SCRIPT_DIR%\backend\src\main\resources\static" rmdir /s /q "%SCRIPT_DIR%\backend\src\main\resources\static"
- xcopy /e /i /q /y "%SCRIPT_DIR%\frontend\dist" "%SCRIPT_DIR%\backend\src\main\resources\static" >nul
- :: ---------- 打包后端 ----------
- echo [4/4] 打包后端 (mvn package)...
- cd /d "%SCRIPT_DIR%\backend"
- call mvn package -DskipTests -q
- if %errorlevel% neq 0 (
- echo [ERROR] 后端打包失败
- exit /b 1
- )
- echo.
- echo [DONE] 构建打包完成!
- echo.
- :: ---------- 运行 ----------
- if "%ACTION%"=="build" (
- echo 提示: 使用 run.bat run 启动服务
- exit /b 0
- )
- echo ----------------------------------------
- echo 启动服务 (端口 3945)
- echo 访问 http://localhost:3945
- echo 按 Ctrl+C 停止
- echo ----------------------------------------
- echo.
- cd /d "%SCRIPT_DIR%\backend"
- java -jar target\service-management-1.0.0.jar
- endlocal
- exit /b 0
- :: ---------- 帮助 ----------
- :usage
- echo.
- echo 用法: run.bat [命令]
- echo.
- echo 命令:
- echo (无参数) 构建前端 + 打包后端 + 启动服务
- echo build 仅构建前端 + 打包后端(不启动)
- echo run 构建 + 打包 + 启动(同默认行为)
- echo clean 清理所有构建产物和运行时数据
- echo help 显示此帮助信息
- echo.
- exit /b 0
|