iotsaas/start-all.bat
2995840376 0ce191c448 chore: 初始化 iotsaas 版本库基线
纳入范围:
- backend/  Spring Boot 多模块后端(iot-common/device/rule/data/alarm/auth)
- frontend/admin/  Vue3 + Element Plus 管理后台
- Android/   涂鸦原生 APP (com.xhai.iot)
- backend/sql/  Flyway 风格迁移脚本(V2~V21)
- docs/       对接文档与设计文档

排除范围:
- 构建产物: node_modules/ target/ build/ dist/ .gradle/
- 签名密钥: *.jks *.keystore (严禁入库)
- 本机配置: Android/local.properties
- 运行日志: logs/ *.log
- AI 协作本地数据 .codebuddy/ 与第三方 demo tuya-demo/

.gitattributes 统一以 LF 存储, Windows 批处理保留 CRLF
2026-10-27 12:00:41 +08:00

82 lines
2.8 KiB
Batchfile
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

@echo off
chcp 65001 >nul
title IoT Platform - 全栈启动(使用预编译JAR)
set JAVA17=C:\Program Files\Eclipse Adoptium\jdk-17.0.19.10-hotspot\bin\java.exe
if not exist "%JAVA17%" (
echo [错误] 找不到 Java 17: %JAVA17%
echo 请确认 JDK 17 已安装在此路径
pause
exit /b 1
)
:: 各服务 JAR(注意:iot-device 带 exec classifier,其余为 fat jar 原名)
set DEV_JAR=%~dp0backend\iot-device\target\iot-device-1.0.0-exec.jar
set DATA_JAR=%~dp0backend\iot-data\target\iot-data-1.0.0.jar
set RULE_JAR=%~dp0backend\iot-rule\target\iot-rule-1.0.0.jar
set ALARM_JAR=%~dp0backend\iot-alarm\target\iot-alarm-1.0.0.jar
:: 校验 JAR 是否存在
for %%J in ("%DEV_JAR%" "%DATA_JAR%" "%RULE_JAR%" "%ALARM_JAR%") do (
if not exist %%J (
echo [错误] 找不到JAR文件: %%J
echo 请先编译: mvn -f backend/pom.xml -pl iot-device,iot-data,iot-rule,iot-alarm -am package -DskipTests
pause
exit /b 1
)
)
:: 释放已占用的后端端口(避免重跑时端口冲突)
echo [信息] 清理 9081-9084 端口旧进程...
for %%P in (9081 9082 9083 9084) do (
for /f "tokens=5" %%a in ('netstat -ano ^| findstr ":%%P.*LISTENING"') do (
taskkill /F /PID %%a >nul 2>&1
)
)
timeout /t 3 /nobreak >nul
echo ============================================
echo IoT Platform 全栈启动(4 个后端服务)
echo ============================================
echo.
echo [1/4] 启动 iot-device (端口 9081)...
start "iot-device-9081" cmd /k ""%JAVA17%" -jar "%DEV_JAR%""
echo [2/4] 启动 iot-data (端口 9082)...
start "iot-data-9082" cmd /k ""%JAVA17%" -jar "%DATA_JAR%""
echo [3/4] 启动 iot-rule (端口 9083)...
start "iot-rule-9083" cmd /k ""%JAVA17%" -jar "%RULE_JAR%""
echo [4/4] 启动 iot-alarm (端口 9084)...
start "iot-alarm-9084" cmd /k ""%JAVA17%" -jar "%ALARM_JAR%""
echo.
echo ============================================
echo 4个后端服务已在新窗口启动
echo 等待30秒后启动前端...
echo ============================================
timeout /t 30 /nobreak >nul
echo.
echo [下一步] 启动 uniapp 前端 (端口 9000)
start "uniapp-9000" cmd /k "cd /d f:\work\iotsaas\uniapp && npm run dev:h5"
echo.
echo [后台] 启动 admin 管理后台 (端口 3000)
start "admin-3000" cmd /k "cd /d f:\work\iotsaas\frontend\admin && (if not exist node_modules call npm install) && npm run dev"
echo.
echo 全部启动完成!
echo 设备服务 API: http://localhost:9081/doc.html
echo 数据服务 API: http://localhost:9082/doc.html
echo 规则服务 API: http://localhost:9083/doc.html
echo 告警服务 API: http://localhost:9084/doc.html
echo uniapp 前端: http://localhost:9000
echo admin 后台: http://localhost:3000
echo.
echo 关闭各个服务请在对应窗口中按 Ctrl+C
pause