上一章:LuckReport介绍
运行与部署
项目简介
Luck-Report 是一款基于开源项目 UReport2 重构的 Java 高性能报表引擎,通过迭代单元格可以实现任意复杂的中国式报表。相较于 UReport2,Luck-Report 在技术架构上进行了全新升级,后端基于 SpringBoot 框架开发、前端采用 Vue 框架构建,技术选型贴合当下主流项目开发标准,可精准适配各类实际开发需求。
Luck-Report 提供了全新的基于网页的报表设计器,可以在 Chrome、Firefox、Edge 等各种主流浏览器运行(IE 浏览器除外)。使用 Luck-Report,打开浏览器即可完成各种复杂报表的设计制作。
Luck-Report 基于 Apache-2.0 开源协议开源
在线体验
准备工作
系统环境
- JDK >= 1.8
- Maven >= 3.0
- MySQL >= 5.7
- Node.js >= 14.0
- Npm >= 6.0
拉取项目
- Luck-Report 体验地址:www.quzhe.top/luck-report…
- Luck-Report 源码下载:gitee.com/LuckyPools/…
- Luck-Report 技术交流群:
849697890
# 使用 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-web 模块的 application-dev.yml 配置文件
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.web.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 (具体端口根据配置而定)
若能正确展示报表设计器界面,则表明前端运行成功
部署项目
后端
- 打包工程文件
在Maven中找到luck-report-server项目,然后点击package进行打包
打包完成后,在luck-report-web模块的target目录下找到luck-report-web.jar文件
- 部署工程文件
1、jar 部署方式
使用命令行执行:
java –jar luck-report-web.jar
2、Docker 部署方式
使用Dockerfile打包成镜像,用bin/start.sh脚本启动 Docker 容器
前端
1、进入前端项目目录 luck-report-ui
2、运行 npm run build 打包项目
npm run build
3、打包完成后,会在项目目录下生成dist文件夹
4、将生成好的dist文件部署到nginx下
常见问题
- 如果提示当前权限不足,无法写入文件请检查配置文件中的路径是否有可读可写操作权限
- 前端打包时如果遇到依赖问题,可以尝试删除
node_modules文件夹和package-lock.json文件,重新运行npm i
如遇到无法解决的问题请到项目仓库 Issues 或群聊中反馈,会不定时进行解答。