Skip to content

项目启动指南

本文档详细说明如何从零开始启动 PointLion 微服务项目。

前提条件

在开始之前,请确保您的开发环境已安装以下组件:

  • JDK 1.8+ - Java 开发环境
  • Maven 3.6+ - Java 项目构建工具
  • Node.js 16+ - 前端开发环境
  • MySQL 5.7+ - 数据库
  • Redis 6.0+ - 缓存
  • Nacos 2.x - 服务注册中心和配置中心
  • RocketMQ 5.x - 消息队列(可选)
  • XXL-Job - 定时任务调度(可选)

第一步:检出基础项目

1.1 获取基础公共模块

首先需要获取基础项目,这是所有模块的核心基础:

bash
# 克隆基础公共模块(优先部署)
git clone http://admin.dianshixinxi.com:666/dianshixinxi-out/cloud/pointlion-cloud-public.git pointlion-cloud
cd pointlion-cloud

重要提示pointlion-cloud-public 是基础公共模块,必须优先部署。所有其他业务模块都依赖于此模块。

1.2 项目结构说明

检出后,项目主要包含以下目录:

pointlion-cloud/              # 后端项目(Java + Spring Boot)
├── pointlion-cloud-gateway/  # 网关服务
├── pointlion-cloud-bd/       # 基础数据服务
├── pointlion-cloud-infra/    # 基础设施服务
├── pointlion-cloud-oa/       # OA办公服务(业务模块)
├── pointlion-cloud-crm/      # CRM客户服务(业务模块)
├── pointlion-cloud-hrm/      # HRM人事服务(业务模块)
├── pom.xml                   # Maven 依赖管理

pointlion-cloud-ui/           # 前端项目(Vue 3 + Element Plus)
├── src/
│   ├── api/                  # API 接口定义
│   │   ├── oa/               # OA 模块 API
│   │   ├── crm/              # CRM 模块 API
│   │   ├── hrm/              # HRM 模块 API
│   │   └── system/           # 系统模块 API
│   ├── views/                # 页面视图
│   │   ├── oa/               # OA 模块页面
│   │   ├── crm/              # CRM 模块页面
│   │   ├── hrm/              # HRM 模块页面
│   │   └── system/           # 系统模块页面
├── package.json
└── vite.config.js

第二步:代码整理

2.1 后端项目代码整理

如果您购买了特定业务模块(如 OA 模块),需要将模块代码整合到基础项目中:

步骤说明:

  1. 检出业务模块代码

    bash
    # 以 OA 模块为例,从其他 Git 地址检出
    git clone http://admin.dianshixinxi.com:666/dianshixinxi-out/cloud/pointlion-oa.git temp-oa
  2. 复制模块到基础项目

    bash
    # 将业务模块的文件夹复制到基础项目中
    # 例如:将 temp-oa/pointlion-cloud-oa 复制到 pointlion-cloud/ 目录下
    cp -r temp-oa/pointlion-cloud-oa pointlion-cloud/
  3. 整合项目结构

    pointlion-cloud/
    ├── pointlion-cloud-gateway/  # 网关服务
    ├── pointlion-cloud-bd/       # 基础数据服务
    ├── pointlion-cloud-infra/    # 基础设施服务
    ├── pointlion-cloud-oa/       # ← OA 模块(新增)
    ├── pointlion-cloud-crm/      # ← CRM 模块(如已购买)
    ├── pointlion-cloud-hrm/      # ← HRM 模块(如已购买)
    └── pom.xml                   # 根 pom 文件
  4. 修改根 pom.xml 依赖管理

    打开 pointlion-cloud/pom.xml,根目录的 pom 文件包含所有模块的依赖管理。

    重要:如果您只购买了部分模块,需要将未购买的模块依赖注释掉。

    xml
    <!-- pom.xml 示例 -->
    <modules>
        <!-- 基础模块(必须) -->
        <module>pointlion-cloud-gateway</module>
        <module>pointlion-cloud-bd</module>
        <module>pointlion-cloud-infra</module>
    
        <!-- 已购买的模块 -->
        <module>pointlion-cloud-oa</module>
    
        <!-- 如果购买了 CRM,取消注释 -->
        <!-- <module>pointlion-cloud-crm</module> -->
    
        <!-- 如果购买了 HRM,取消注释 -->
        <!-- <module>pointlion-cloud-hrm</module> -->
    
        <!-- 未购买的模块,保持注释状态 -->
        <!-- <module>pointlion-cloud-erp</module> -->
    </modules>

    注意:未购买的模块依赖必须注释掉,否则 Maven 构建会失败。

2.2 前端项目代码整理

如果您购买了业务模块,需要将前端代码整合到基础前端项目中:

步骤说明:

  1. 找到业务模块的前端代码

    bash
    # 业务模块项目中通常包含【前端】文件夹
    # 例如:temp-oa/前端/ 或 temp-oa/frontend/
    cd temp-oa/前端
    ls
    # 会看到:api/  和  views/  文件夹
  2. 复制 API 和 Views 文件夹

    bash
    # 将 api 文件夹复制到基础前端项目中
    cp -r temp-oa/前端/api pointlion-cloud-ui/src/api/oa
    
    # 将 views 文件夹复制到基础前端项目中
    cp -r temp-oa/前端/views pointlion-cloud-ui/src/views/oa
  3. 整合后的前端结构

    pointlion-cloud-ui/src/
    ├── api/
    │   ├── system/           # 系统模块 API(基础已有)
    │   ├── bpm/              # 工作流 API(基础已有)
    │   ├── oa/               # ← OA 模块 API(新增)
    │   ├── crm/              # ← CRM 模块 API(如已购买)
    │   └── hrm/              # ← HRM 模块 API(如已购买)
    └── views/
        ├── system/           # 系统模块页面(基础已有)
        ├── bpm/              # 工作流页面(基础已有)
        ├── oa/               # ← OA 模块页面(新增)
        ├── crm/              # ← CRM 模块页面(如已购买)
        └── hrm/              # ← HRM 模块页面(如已购买)
  4. 前端整合完成

    • 复制完成后,前端项目中 apiviews 目录下会新增对应的业务模块文件夹
    • 前端项目会自动识别这些新增的模块,无需额外配置

第三步:后端运行

3.1 修改配置文件

后端项目启动前需要修改配置文件,配置中间件连接信息。

配置文件位置

找到后端项目中的配置文件(通常在各模块的 src/main/resources/ 目录下):

pointlion-cloud/
├── pointlion-cloud-gateway/src/main/resources/
│   └── application-local.yaml         # 网关配置
├── pointlion-cloud-bd/src/main/resources/
│   └── application-local.yaml         # 基础数据服务配置
├── pointlion-cloud-infra/src/main/resources/
│   └── application-local.yaml         # 基础设施服务配置
├── pointlion-cloud-oa/src/main/resources/
│   └── application-local.yaml         # OA 模块配置
└── ...

配置项说明

打开 application-local.yaml 文件,需要配置以下中间件:

yaml
spring:
  # 数据库配置
  datasource:
    url: jdbc:mysql://localhost:3306/pointlion?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
    username: root
    password: your_mysql_password
    driver-class-name: com.mysql.cj.jdbc.Driver

  # Redis 配置
  redis:
    host: localhost
    port: 6379
    password: your_redis_password
    database: 0

# Nacos 配置(服务注册中心和配置中心)
cloud:
  nacos:
    discovery:
      server-addr: localhost:8848      # Nacos 注册中心地址
      namespace: public                # 命名空间
      group: DEFAULT_GROUP             # 分组
    config:
      server-addr: localhost:8848      # Nacos 配置中心地址
      file-extension: yaml

# RocketMQ 配置(可选)
rocketmq:
  name-server: localhost:9876          # RocketMQ 地址
  producer:
    group: pointlion-producer-group

# XXL-Job 配置(可选)
xxl:
  job:
    admin:
      addresses: http://localhost:8888/xxl-job-admin  # XXL-Job 管理后台地址
    executor:
      appname: pointlion-oa           # 执行器名称
      port: 9999                       # 执行器端口

配置项清单

中间件配置项是否必须说明
MySQLspring.datasource.*✅ 必须数据库连接信息
Redisspring.redis.*✅ 必须缓存连接信息
Nacoscloud.nacos.*✅ 必须服务注册和配置中心
RocketMQrocketmq.*❌ 可选消息队列(如使用消息功能则必须)
XXL-Jobxxl.job.*❌ 可选定时任务(如使用定时任务则必须)

3.2 初始化数据库

首次启动需要初始化数据库:

bash
# 1. 创建数据库
mysql -u root -p
CREATE DATABASE pointlion CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

# 2. 导入初始化 SQL 脚本
# 脚本位置:pointlion-cloud/doc/sql/init.sql
mysql -u root -p pointlion < doc/sql/init.sql

3.3 启动后端服务

方式一:IDE 启动(推荐开发环境)

  1. 启动顺序

    ① Nacos(必须最先启动)
    ② pointlion-cloud-bd(基础数据服务)
    ③ pointlion-cloud-infra(基础设施服务)
    ④ pointlion-cloud-gateway(网关服务)
    ⑤ 业务模块(pointlion-cloud-oa、pointlion-cloud-crm 等)
  2. 在 IDEA 中启动

    • 打开 IDEA,导入 pointlion-cloud 作为 Maven 项目
    • 等待 Maven 依赖下载完成
    • 找到各模块的 Application.java 启动类
    • 右键 → Run 'XXXApplication'
  3. 验证启动成功

    • 控制台输出:Started XXXApplication in xx seconds
    • 访问 Nacos 控制台:http://localhost:8848/nacos
    • 在"服务管理"→"服务列表"中看到已注册的服务

方式二:命令行启动

bash
# 进入项目根目录
cd pointlion-cloud

# 编译打包(跳过测试)
mvn clean package -DskipTests

# 启动各个服务(按启动顺序)
cd pointlion-cloud-bd
java -jar target/pointlion-cloud-bd.jar

# 新开终端,启动基础设施服务
cd pointlion-cloud-infra
java -jar target/pointlion-cloud-infra.jar

# 新开终端,启动网关服务
cd pointlion-cloud-gateway
java -jar target/pointlion-cloud-gateway.jar

# 新开终端,启动业务模块
cd pointlion-cloud-oa
java -jar target/pointlion-cloud-oa.jar

# ...以此类推启动其他服务

3.4 验证后端服务

访问 Nacos 控制台验证服务是否注册成功:

bash
# 访问地址
http://localhost:8848/nacos

# 默认账号密码
账号:nacos
密码:nacos

在"服务管理"→"服务列表"中应该能看到所有启动的服务。

第四步:前端运行

4.1 安装 pnpm(推荐)

为了提升依赖安装速度,推荐使用 pnpm 包管理器:

bash
# 1. 配置 npm 镜像源(使用淘宝镜像,加速下载)
npm config set registry https://registry.npmmirror.com

# 2. 全局安装 pnpm
npm install -g pnpm

# 3. 验证安装
pnpm --version

4.2 安装依赖

bash
# 进入前端项目目录
cd pointlion-cloud-ui

# 使用 pnpm 安装依赖(推荐)
pnpm install

# 或者使用 npm 安装
npm install

常见问题

  • 如果安装失败,尝试删除 node_modulespackage-lock.json 后重新安装
  • 如果遇到网络问题,确保已配置淘宝镜像源

4.3 启动前端服务

bash
# 开发模式启动
npm run dev

# 或者
pnpm dev

启动成功后会看到类似输出:

  VITE v5.x.x  ready in xxx ms

  ➜  Local:   http://localhost:3000/
  ➜  Network: http://192.168.x.x:3000/

4.4 访问系统

在浏览器中打开前端地址:

bash
# 本地访问
http://localhost:3000

# 默认登录账号(请参考具体项目文档)
账号:admin
密码:admin123

常见问题

Q1: Maven 构建失败,提示找不到某个模块?

A: 检查 pom.xml 中的模块依赖,确保:

  • 已购买的模块取消注释
  • 未购买的模块保持注释状态
  • 所有模块的父 pom 指向正确的父工程

Q2: Nacos 无法连接?

A: 检查:

  1. Nacos 是否已启动(访问 http://localhost:8848/nacos)
  2. application-local.yaml 中的 Nacos 地址是否正确
  3. 防火墙是否开放 8848 端口

Q3: 前端启动后页面空白或报错?

A: 检查:

  1. 后端服务是否全部启动
  2. 网关服务是否正常运行
  3. 浏览器控制台是否有跨域错误
  4. API 接口地址配置是否正确

Q4: 数据库连接失败?

A: 检查:

  1. MySQL 服务是否启动
  2. 数据库账号密码是否正确
  3. 数据库是否已创建
  4. application-local.yaml 中的数据库配置是否正确

Q5: Redis 连接失败?

A: 检查:

  1. Redis 服务是否启动(redis-cli ping 测试)
  2. Redis 密码配置是否正确
  3. application-local.yaml 中的 Redis 配置是否正确

Q6: 前端依赖安装慢或失败?

A: 解决方案:

  1. 使用 pnpm 替代 npm(更快)
  2. 配置淘宝镜像源:npm config set registry https://registry.npmmirror.com
  3. 使用国内 VPN 或代理

Q7: 业务模块代码整合后前端看不到新增的菜单?

A: 检查:

  1. API 文件夹是否正确复制到 src/api/ 目录
  2. Views 文件夹是否正确复制到 src/views/ 目录
  3. 清除浏览器缓存后重新登录
  4. 检查后端接口是否返回了新的菜单数据

Q8: 服务启动顺序错误导致启动失败?

A: 请严格按照以下顺序启动:

  1. Nacos(必须最先)
  2. pointlion-cloud-bd(基础数据服务)
  3. pointlion-cloud-infra(基础设施服务)
  4. pointlion-cloud-gateway(网关服务)
  5. 业务模块(pointlion-cloud-oa、pointlion-cloud-crm 等)

下一步

启动成功后,您可以:

  1. 查看操作手册 - 微服务版本操作手册
  2. 查看技术架构 - 技术架构文档
  3. 体验在线演示 - http://cloud.dianshixinxi.com:90
  4. 获取技术支持 - 发送邮件至 439635374@qq.com

技术支持

如果在启动过程中遇到问题,请通过以下方式联系我们:


提示:首次启动建议按照本文档步骤逐步操作,确保每一步都成功后再进行下一步。