#!/bin/bash # macOS 启动器(Windows 请用 启动.bat) cd "$(dirname "$0")" || exit 1 # Finder 双击不会加载 shell 配置:补上 Homebrew / nvm / volta 常见路径 export PATH="/opt/homebrew/bin:/usr/local/bin:$HOME/.volta/bin:$HOME/.local/bin:$PATH" if [ -s "$HOME/.nvm/nvm.sh" ]; then # shellcheck disable=SC1090 . "$HOME/.nvm/nvm.sh" >/dev/null 2>&1 fi fail() { echo "" echo "[错误] $1" echo "" if [ -t 0 ]; then read -n 1 -s -r -p "按任意键关闭窗口…" echo "" fi exit 1 } echo "============================================" echo " 智慧运营中台 - macOS 启动器" echo " 目录:$(pwd)" echo "============================================" echo "" command -v node >/dev/null 2>&1 || fail "未检测到 Node.js。请安装 Node.js 22.13 或更高版本:https://nodejs.org/" command -v npm >/dev/null 2>&1 || fail "未检测到 npm(通常随 Node.js 一起安装)。" node -e "const [a,b]=process.versions.node.split('.').map(Number);if(a<22||(a===22&&b<13)){console.error('当前 Node.js '+process.version+' 过低,需要 22.13 及以上。');process.exit(1)}" \ || fail "Node.js 版本过低:$(node -v),需要 22.13 及以上。" echo "使用 Node:$(command -v node) ($(node -v))" echo "" if [ ! -d node_modules ]; then echo "正在安装依赖(首次启动需要几分钟)..." npm install || fail "依赖安装失败,请检查网络后重试。" fi echo "正在启动服务,启动后请保持本窗口不要关闭..." echo "浏览器访问:http://localhost:5177" echo "" npm start echo "" if [ -t 0 ]; then read -n 1 -s -r -p "服务已退出,按任意键关闭窗口…" echo "" fi