#!/bin/bash # 执法码2.0 网关 - 启动脚本 # 用法: ./start.sh APP_HOME="/efcode20" JAR_NAME="zdxt-gateway-web-server.jar" PROFILES="prod" LOG_FILE="${APP_HOME}/zdxt-gateway-web-server.log" JAR_PATH="${APP_HOME}/${JAR_NAME}" # 检查 jar 是否存在 if [ ! -f "$JAR_PATH" ]; then echo "[FAIL] ${JAR_PATH} 不存在" exit 1 fi # 检查是否已在运行 PID=$(pgrep -f "${JAR_NAME}" 2>/dev/null) if [ -n "$PID" ]; then echo "[INFO] 服务已在运行 (PID: ${PID})" exit 0 fi # 启动服务 echo "[INFO] 启动 ${JAR_NAME} ..." nohup java -jar "${JAR_PATH}" --spring.profiles.active=${PROFILES} > "${LOG_FILE}" 2>&1 & NEW_PID=$! sleep 1 if kill -0 "$NEW_PID" 2>/dev/null; then echo "[OK] 启动成功 (PID: ${NEW_PID})" else echo "[FAIL] 启动失败,请查看日志: ${LOG_FILE}" exit 1 fi