Files
ccdi/docs/tests/scripts/test-restart-java-backend.sh

41 lines
1.0 KiB
Bash

#!/bin/sh
set -eu
ROOT_DIR=$(CDPATH= cd -- "$(dirname -- "$0")/../../.." && pwd)
SCRIPT_FILE="$ROOT_DIR/bin/restart_java_backend.sh"
echo "[检查] 后端脚本必须使用 java -jar 启动打包产物"
if ! grep -Fq 'TARGET_DIR="$ROOT_DIR/ruoyi-admin/target"' "$SCRIPT_FILE"; then
echo "失败: 未定义 ruoyi-admin 打包产物目录"
exit 1
fi
if ! grep -Fq 'JAR_NAME="ruoyi-admin.jar"' "$SCRIPT_FILE"; then
echo "失败: 未定义目标 jar 文件名"
exit 1
fi
if ! grep -Fq 'nohup java $JAVA_OPTS -jar "$JAR_NAME"' "$SCRIPT_FILE"; then
echo "失败: 未使用 java -jar 启动"
exit 1
fi
if grep -Fq 'spring-boot:run' "$SCRIPT_FILE"; then
echo "失败: 脚本仍包含 spring-boot:run 启动方式"
exit 1
fi
if ! grep -Fq 'APP_MARKER="-Dccdi.backend.root=$ROOT_DIR"' "$SCRIPT_FILE"; then
echo "失败: 未为脚本托管的后端进程写入唯一标记"
exit 1
fi
if ! grep -Fq 'cd "$TARGET_DIR"' "$SCRIPT_FILE"; then
echo "失败: 启动前未切换到 target 目录"
exit 1
fi
echo "通过"