run.sh 1001 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #!/bin/bash
  2. set -e
  3. FRONTEND_DIR="frontend"
  4. BACKEND_DIR="backend"
  5. STATIC_DIR="${BACKEND_DIR}/src/main/resources/static"
  6. echo "========================================"
  7. echo " 前后端合并构建部署工具"
  8. echo "========================================"
  9. echo
  10. build() {
  11. echo "---- [1/3] 前端打包(直接输出到后端 static 目录)----"
  12. cd "${FRONTEND_DIR}"
  13. npm run build
  14. cd ..
  15. echo "---- [2/3] 后端打包 ----"
  16. cd "${BACKEND_DIR}"
  17. mvn package -DskipTests -q
  18. cd ..
  19. echo "---- [3/3] 构建完成 ----"
  20. }
  21. case "${1}" in
  22. build)
  23. echo "[模式] 仅构建(不启动服务)"
  24. build
  25. echo
  26. echo "[完成] 构建成功!使用以下命令运行:"
  27. echo " java -jar ${BACKEND_DIR}/target/*.jar"
  28. ;;
  29. *)
  30. echo "[模式] 构建 + 启动"
  31. build
  32. echo
  33. echo "[启动] 正在启动后端服务..."
  34. cd "${BACKEND_DIR}"
  35. mvn spring-boot:run -q
  36. ;;
  37. esac