源码编译运行¶
请使用 v1.3.0 等已发布分支的代码运行 CordysCRM。请勿使用 main 分支,main 分支代码均处于开发或测试阶段,可能存在较明显功能缺陷。
目前支持的源码运行环境有: Windows (x86)、Linux(x86 & arm64)、MacOS(x86 & arm64)。
1 项目结构¶
├── backend # 后端项目
│ ├── app # 应用程序模块
│ ├── crm # CRM 核心模块
│ └── framework # 通用框架模块
├── frontend # 前端项目
│ ├── packages # 前端包管理
│ │ ├── lib-shared # 公共库模块
│ │ │ ├── api # API 封装
│ │ │ ├── assets # 静态资源
│ │ │ ├── enums # 枚举
│ │ │ ├── hooks # 钩子函数
│ │ │ ├── locale # 国际化封装
│ │ │ ├── method # 工具函数
│ │ │ ├── model # 数据模型
│ │ │ ├── types # 全局类型声明
│ │ ├── mobile # 移动端项目
│ │ ├── web # WEB端项目
├── installer # 安装脚本
├── conf # 配置文件
│ ├── mysql # MySQL 配置
│ └── redis # Redis 配置
└── shells # 脚本
2 安装基础 POM¶
该命令会将 parent pom 安装到本地 Maven 仓库,使其他外部子工程可以获取最新的 <properties> 配置。
./mvnw install -N
3 后端构建¶
📌 提示:确保已正确安装 JDK 21 及以上版本和 Maven 环境。
执行以下命令构建后端模块(如 framework、crm、app 等)并安装到本地仓库:
./mvnw clean install -DskipTests -DskipAntRunForJenkins --file backend/pom.xml
-DskipTests: 跳过测试用例执行。-DskipAntRunForJenkins: 跳过 Jenkins 使用的 Ant 任务。
3.1 🧩 后端参数配置说明¶
在本地运行 Cordys CRM 项目时,需要在本地创建配置文件:
/opt/cordys/conf/cordys-crm.properties
⚙️ 配置示例¶
# ==============================
# 数据库连接配置
# ==============================
# 数据库连接 URL,请根据实际环境修改 IP 与数据库名称
spring.datasource.url=jdbc:mysql://你的 MySQL IP:3306/cordys-crm?autoReconnect=false&useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false
# 数据库用户名
spring.datasource.username=root
# 数据库密码
spring.datasource.password=CordysCRM@mysql
# ==============================
# Redis 缓存配置
# ==============================
# Redis 服务器地址
spring.data.redis.host=你的 Redis IP
# Redis 端口
spring.data.redis.port=6379
# Redis 密码
spring.data.redis.password=CordysCRM@redis
# Redis Session 存储方式(indexed 推荐)
spring.session.redis.repository-type=indexed
# Session 过期时间(单位:秒,示例为 12 小时)
spring.session.timeout=43200s
4 前端构建¶
📌 提示:确保已正确安装 Node.js 和依赖环境。
工程初始化&运行¶
在/packages目录下运行依赖安装命令:
pnpm i -w
统一构建工程:
npm run build
mobile 移动端工程包¶
移动端工程由 Vite+Vue3+TS+Vant-UI 基础框架组成。
运行移动端项目:
cd package/mobile
npm run dev
在package/mobile下单独构建移动端项目:
npm run build
mobile 调试&开发¶
为了方便移动端项目的开发调试,可以通过模拟登录态:
1. 启动 `web` 项目并完成登录,登录后打开浏览器控制台,复制 `localStorage` 中的 `sessionId` 和 `csrfToken` 两个属性值。
2. 启动 `mobile` 项目,打开控制台,将第1步复制的 `localStorage` 属性值粘贴至控制台,刷新页面即可模拟登录。若登录过期,重新登录 `web` 项目并复制新的属性值替换即可。
3. 在手机端调试时,进入页面并完成授权登录后,快速点击 10 次用户名区域,切换到 `我的` 菜单,即可唤起 `Eruda` 调试工具。
WEB 端工程包¶
WEB 端工程由 Vite+Vue3+TS+Naive-UI 基础框架组成。
运行 WEB 端项目:
cd package/web
npm run dev
在package/web下单独构建 WEB 端项目:
npm run build
5 整体打包¶
使用以下命令进行完整的构建与打包:
./mvnw clean package