lq_label_build.sh 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. #!/bin/bash
  2. # ============================================
  3. # 前端构建打包脚本 (Linux)
  4. # 用于开发环境构建前端并打包
  5. # ============================================
  6. set -e
  7. echo "============================================"
  8. echo " LQ Label 前端构建脚本"
  9. echo "============================================"
  10. echo ""
  11. # 检查是否在项目根目录
  12. if [ ! -f "web/package.json" ]; then
  13. echo "错误:请在项目根目录运行此脚本"
  14. exit 1
  15. fi
  16. # 进入 web 目录
  17. cd web
  18. # 检查 node_modules
  19. if [ ! -d "node_modules" ]; then
  20. echo "安装依赖..."
  21. yarn install
  22. if [ $? -ne 0 ]; then
  23. echo "依赖安装失败"
  24. cd ..
  25. exit 1
  26. fi
  27. fi
  28. echo ""
  29. echo "[1/3] 构建前端项目..."
  30. yarn nx build lq_label --configuration=production
  31. if [ $? -ne 0 ]; then
  32. echo "构建失败"
  33. cd ..
  34. exit 1
  35. fi
  36. echo ""
  37. echo "[2/3] 打包 dist 目录..."
  38. # 回到根目录
  39. cd ..
  40. # 删除旧的 tar 包
  41. if [ -f "lq_label_dist.tar.gz" ]; then
  42. rm -f "lq_label_dist.tar.gz"
  43. fi
  44. # 使用 tar 打包:
  45. tar -czvf lq_label_dist.tar.gz -C web/dist/apps lq_label
  46. if [ $? -ne 0 ]; then
  47. echo "打包失败"
  48. exit 1
  49. fi
  50. echo ""
  51. echo "[3/3] 完成!"
  52. echo ""
  53. echo "============================================"
  54. echo " 构建产物:lq_label_dist.tar.gz"
  55. echo " 可以提交到 Git 进行版本管理"
  56. echo "============================================"
  57. echo ""
  58. echo "下一步:"
  59. echo " 1. git add lq_label_dist.tar.gz"
  60. echo " 2. git commit -m \"build: update frontend dist\""
  61. echo " 3. git push"
  62. echo " 4. 在服务器上运行 deploy.sh"
  63. echo ""