Skip to content

运行与部署

准备工作

系统环境

  • JDK >= 1.8
  • Maven >= 3.0
  • MySQL >= 5.7
  • Node.js >= 14.0
  • Npm >= 6.0

拉取项目

bash
# 使用 git 指令拉取项目
git clone https://gitee.com/LuckyPools/luck-report.git

运行项目

后端

1、打开 IDEA,在菜单 File -> New -> Project From Existing Sources,然后找到 luck-report 代码所在目录,点击 OK 按钮导入项目。IDEA 会自动加载 Maven 依赖包,初次加载会比较慢(根据自身网络情况而定)

选择连接数据源

2、在 Mysql 数据库中执行 v1.0.0.sql 脚本,创建数据库 luck_product

选择连接数据源

2、修改 luck-report-pub 模块的 application-dev.yml 配置文件

yaml
spring:
  datasource:
    # 数据库用户名,根据您的数据库账号修改
    username: root
    # 数据库密码,根据您的数据库密码修改
    password: root
    # 数据库连接地址,根据您的数据库地址修改
    url: jdbc:mysql://localhost:3306/luck_product?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8
    driver-class-name: com.mysql.cj.jdbc.Driver

luck-report:
  servletPrefix: report
  # 报表文件存储目录,请根据您的实际存储路径修改,确保该目录存在且有读写权限
  fileStoreDir: E:/luckStudio/IO/report
  debug: true

4、项目启动类是 com.luck.report.pub.LuckReportApplication.java ,点击运行,打印标语表示启动成功。

 _                _      _____                       _   
| |              | |    |  __ \                     | |  
| |    _   _  ___| | __ | |__) |___ _ __   ___  _ __| |_ 
| |   | | | |/ __| |/ / |  _  // _ \ '_ \ / _ \| '__| __|
| |___| |_| | (__|   <  | | \ \  __/ |_) | (_) | |  | |_ 
|______\__,_|\___|_|\_\ |_|  \_\___| .__/ \___/|_|   \__|
                                     | |                  
                                     |_|        
Luck-Report 后台启动成功!

前端

1、打开终端,进入到前端项目目录 luck-report-ui

2、运行 npm i 指令安装依赖

npm i

3、运行 npm run dev 指令启动项目

npm run dev

4、打开浏览器,访问:http://localhost:8081/luck-report/report/designer (具体端口根据配置而定)

若能正确展示报表设计器界面,则表明前端运行成功

报表设计器

部署项目

后端

  • 打包工程文件

IDEA 右侧的 Maven 工具中找到 luck-report-server 项目,然后点击 package 打包

打包完成后,在 luck-report-pub 模块的 target 目录下找到 luck-report-pub.jar 文件

  • 部署工程文件

1、jar 部署方式

使用指令启动项目:

java –jar luck-report-pub.jar

2、Docker 部署方式

使用 Dockerfile 打包成镜像,运行 bin/start.sh 脚本启动 Docker 容器

前端

1、打开终端,进入前端项目目录 luck-report-ui

2、运行 npm run build 指令打包前端项目

npm run build

3、打包完成后,会在项目目录下生成 dist 文件夹

4、将生成好的 dist 文件部署到 nginx

常见问题

  1. 如果提示当前权限不足,无法写入文件请检查配置文件中的路径是否有可读可写操作权限
  2. 前端打包时如果遇到依赖问题,可以尝试删除 node_modules 文件夹和 package-lock.json 文件,重新运行 npm i

如遇到无法解决的问题请到项目仓库 Issues 或群聊中反馈,会不定时进行解答。

Luck-Report 报表引擎