Skip to content

构建与部署

共享包

bash
pnpm --filter @xichen-full-stack/types build
pnpm --filter @xichen-full-stack/auth build
pnpm --filter @xichen-full-stack/api-client build
pnpm --filter @xichen-full-stack/utils build
pnpm --filter @xichen-full-stack/components build

仪器设备场景额外构建:

bash
pnpm --filter @xichen-full-stack/instrument build

仪器设备 Agent(Desktop 可选插件)

需要 .NET 8 SDK在 Desktop 需要本地设备控制时执行。

bash
pnpm device-agent:build          # dotnet publish → dist/win-x64
pnpm device-agent:dev            # 开发运行,监听 :19721

Desktop 带 Agent 的安装包:

bash
pnpm desktop:build:instrument
# 等价于:
pnpm device-agent:build && pnpm --filter desktop build:instrument

详见 device-agentDesktop

前端应用

bash
pnpm --filter web build                    # → packages/web/dist
pnpm --filter desktop build:unpack         # Electron unpacked(默认,不含 Agent)
pnpm --filter desktop build                # NSIS 安装包(默认,不含 Agent)
pnpm --filter desktop build:instrument     # 含 device-agent 的安装包
pnpm --filter mobile build:h5
pnpm --filter mobile build:mp-weixin
pnpm --filter mobile build:app-android     # App 资源 → dist/build/app

Mobile Android 完整 APK

CLI build:app-android 只产出 App 资源,完整 APK 需在 HBuilderX 中 云打包 或本地打包。打包前配置 packages/mobile/.env.production 中的 VITE_API_BASE_URL。详见 Mobile — Android 打包

全仓

bash
pnpm build       # Turbo 按依赖顺序(不含 C# device-agent)
pnpm run clean   # 仅删各包 dist,不删 node_modules

根目录还提供:

脚本说明
pnpm device-agent:buildC# Agent Release 发布
pnpm device-agent:devC# Agent 开发运行
pnpm desktop:build:instrumentdevice-agent + Desktop 仪器版安装包

依赖版本

外部依赖版本由 pnpm-workspace.yamlcatalog 统一维护,升级后执行 pnpm install。见 Monorepo — Catalog

后端

后端构建 / 运行
server-java(单体)mvn package → JAR;pnpm --filter @xichen-full-stack/server-java dev
micro-java(微服务)mvn install -DskipTests;打包 auth / system / monitor / gateway 四个 JAR;生产需 Nacos + Gateway + MQ
Pythonpip install -e .;uvicorn 或 Docker(见 Docker server-python

micro-java 不纳入 Turbo pnpm build。详见 micro-java 概览

文档站

bash
pnpm docs:dev      # 本地 http://localhost:5199
pnpm docs:build    # 静态站 → packages/docs/.vitepress/dist
pnpm docs:preview  # 预览构建结果

也可:pnpm --filter @xichen-full-stack/docs dev

脚手架线上产物

说明地址
Web在线演示https://web.tsanyang.top/
DesktopWindows 安装包xichen-desktop.exe
MobileAndroid APKxichen_mobile.apk

生产部署建议

组件建议
WebNginx 托管 dist,反代 /api 到后端
Desktop(默认)desktop build;NSIS / 企业签名
Desktop + 仪器设备device-agent:build,再 desktop build:instrument
device-agent随仪器版安装包打入 resources/device-agent/
Mobile AndroidHBuilderX 云打包 APK;API 用公网或内网可达地址
Java 单体JAR + systemd / Docker;部署后 DB_INIT_ALLOW_WEB=false;首次用 init 接口;缺表时启动不失败
micro-java多服务 JAR + Nacos + Gateway + MQ 基础设施
PythonDocker / uvicorn + Nginx 反代;部署后调用 数据库初始化;缺表时启动不失败
MySQL独立实例,勿用开发 compose 密码

相关文档

Xichen Full Stack 内部文档