更新dev.sh里面uv的检测顺序

This commit is contained in:
jingrow 2025-11-03 21:30:28 +08:00
parent 834dcac79c
commit f696e0d35d

24
dev.sh
View File

@ -69,6 +69,18 @@ cleanup() {
success "清理完成" success "清理完成"
} }
# 确保 uv 可用:最先执行
ensure_uv() {
if command -v uv &> /dev/null; then
return 0
fi
warn "uv 未安装,将尝试自动安装"
install_uv || {
error "自动安装 uv 失败,请手动安装: curl -fsSL https://astral.sh/uv/install.sh | sh"
exit 1
}
}
# 检查Redis # 检查Redis
check_redis() { check_redis() {
if redis-cli ping &> /dev/null; then if redis-cli ping &> /dev/null; then
@ -95,13 +107,8 @@ check_deps() {
info "检查依赖..." info "检查依赖..."
check_cmd node || exit 1 check_cmd node || exit 1
if ! command -v uv &> /dev/null; then # 这里假设 ensure_uv 已经在更早阶段被调用
warn "uv 未安装" check_cmd uv || exit 1
install_uv || {
error "自动安装 uv 失败,请手动安装: curl -fsSL https://astral.sh/uv/install.sh | sh"
exit 1
}
fi
# 检查前端依赖 # 检查前端依赖
if [ ! -d "apps/jingrow/frontend/node_modules" ]; then if [ ! -d "apps/jingrow/frontend/node_modules" ]; then
@ -150,6 +157,7 @@ build_reload_dirs() {
# 启动所有服务 # 启动所有服务
start_all() { start_all() {
info "启动开发环境..." info "启动开发环境..."
ensure_uv
cleanup cleanup
check_redis check_redis
check_deps check_deps
@ -175,6 +183,7 @@ start_all() {
# 只启动前端 # 只启动前端
start_frontend() { start_frontend() {
info "启动前端..." info "启动前端..."
ensure_uv
cleanup cleanup
check_deps check_deps
cd apps/jingrow/frontend && npm run dev cd apps/jingrow/frontend && npm run dev
@ -183,6 +192,7 @@ start_frontend() {
# 只启动后端 # 只启动后端
start_backend() { start_backend() {
info "启动后端..." info "启动后端..."
ensure_uv
cleanup cleanup
check_redis check_redis
check_deps check_deps