Files
as-daycard-openapi/start.sh
zhaogd 30198c7191 初始化天卡开放平台后端项目
包含完整功能模块:
- 设备激活(直销激活码模式 + 代销免激活码模式)
- 微信支付 + 天卡订单
- 天卡池管理 + 异步橘视厅SDK激活
- 第三方合作伙伴接口(代销模式)
  - 签名鉴权(appKey/appSecret + nonce防重放)
  - 天卡消耗(事务 + 幂等 + 并发控制)
  - 媒资接口(三级授权过滤)
  - 审计日志
- 定价策略(3层:门店 > 渠道 > 平台)
- 分账(微信分账 + 分润规则)
- Docker部署(含Redis容器)
2026-07-26 12:34:13 +08:00

53 lines
1.8 KiB
Bash
Executable File
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.

#!/usr/bin/env bash
# ===========================================================
# start.sh — daycard-openapi 后端一键启动脚本
# 项目: Spring Boot 2.6.6 / Java 17 / 端口 8084
#
# 用法:
# ./start.sh # clean 后启动(推荐)
# ./start.sh --no-clean # 跳过 clean,加速重复启动
# ./start.sh -Dspring-boot.run.jvmArguments="-Dserver.port=8090"
# # 透传任意 maven / spring-boot 参数
# ===========================================================
set -euo pipefail
cd "$(dirname "$0")"
# ---- 1. 选定 Java 17(找不到则回退 Java 8)----
JDK17_PREF="/Users/zhaoguodong/Library/Java/JavaVirtualMachines/jbr-17.0.14/Contents/Home"
if [[ -d "$JDK17_PREF" ]]; then
export JAVA_HOME="$JDK17_PREF"
elif JDK17_AUTO="$(/usr/libexec/java_home -v 17 2>/dev/null)"; then
export JAVA_HOME="$JDK17_AUTO"
elif JDK8_AUTO="$(/usr/libexec/java_home -v 1.8 2>/dev/null)"; then
export JAVA_HOME="$JDK8_AUTO"
echo "⚠️ 未找到 Java 17,回退到 Java 8" >&2
else
echo "❌ 找不到 Java 17 或 Java 8,请安装 JDK 或修改本脚本里的 JAVA_HOME" >&2
exit 1
fi
echo "==> JAVA_HOME=$JAVA_HOME"
"$JAVA_HOME/bin/java" -version
# ---- 2. 解析参数 ----
DO_CLEAN=1
PASSTHRU=()
for arg in "$@"; do
case "$arg" in
--no-clean) DO_CLEAN=0 ;;
--clean) DO_CLEAN=1 ;;
*) PASSTHRU+=("$arg") ;;
esac
done
# ---- 3. 启动 ----
# clean 可清掉 target 中残留的 stale class(曾出现 AsApplication 2.class
# 导致“找到两个 main class”无法启动的问题)。
GOAL="spring-boot:run"
if [[ "$DO_CLEAN" -eq 1 ]]; then
GOAL="clean spring-boot:run"
echo "==> mvn clean spring-boot:run"
else
echo "==> mvn spring-boot:run"
fi
mvn $GOAL "${PASSTHRU[@]+"${PASSTHRU[@]}"}"