环境

部署项目之前请确定您的电脑开发环境
  • maven
  • Git
  • jdk8
  • eclipse 等IDE
  • mysql 5.6+ 或 oracle(非个人版)
  • redis
  • 工作空间字符集 UTF-8
  • maven 私服使用 各个工程中 root pom 中的私服地址

SpringBoot 版开发部署

  1. Clone Spring Boot 版本项目
https://gitee.com/agile-bpm/agilebpm-base-spring-boot.git
  1. 引入 Maven Spring Boot 项目,含 agilebpm-app-simples,demo,demo-project-ui 三个案例工程
  1. 对项目根目录执行 mvn 命令 clean install 安装相关依赖(注意私服配置)
  1. 建表、执行初始化语句,按照 初始化SQL顺序依次执行,参考 readme,非升级情况请勿执行upgrade语句。(也可复制只读demo库 47.106.139.29:3306/angular demo/demo)
  1. 启动项目,修改数据库配置( application.yml ) 然后在 SamplesApplication.java 中执行 main 方法
  1. 浏览器访问 http://localhost:8080 即可体验 AgileBPM !

如果需要查看源码可以引入 agilebpm 主工程 https://gitee.com/agile-bpm/agile-bpm-basic

最后推荐 查看 敏捷流程实施三步曲 了解 整体 流程实施 解决方案

basic 版本开发部署

以 eclipse 为例

  1. 配置全局工作空间字符集 UTF-8
  1. 引入 maven 项目 https://gitee.com/agilebpm/agile-bpm-basic.git
  1. 建表、执行初始化语句,按照SQL顺序依次执行 https://gitee.com/agile-bpm/agile-bpm-basic/tree/master/_doc/mysql

  2. 在工程root目录下 执行maven命令 clean install 安装相关依赖

使用 jetty maven 插件 启动

web 项目下 mvn jetty:run 就可以直接运行项目
通过浏览器 http://localhost:8080/bpm-explorer 进入首页

使用 Tomcat server 启动

  1. server窗口, new server 选择 Tomcat8 ,使用 jdk8
  2. 在 server 上右键 Add and Remove 选择 web 项目
  3. 设置 server Modules 将 web path 设置成 /agile-bpm-platform ,Auto reloading enabled 勾去掉
  4. Add External Web Module 选择前端项目 bpm-explorer 本地路径,path 设置成 /bpm-explorer
  1. 建表、执行初始化语句。按照 初始化SQL顺序依次执行,也可复制只读案例库 (47.106.139.29:3306/angular demo/demo)
  2. 修改数据连接( app-dev.properties )并启动 Tomcat

如图maven项目正常的情况下,server下会显示依赖的模块,这些模块是热部署的,修改内容无需重启。
启动成功后访问 http://localhost:8080/bpm-explorer/ (/bpm-explorer 则对应前端项目的ctx)

至此就完成了开发环境配置

eclipse 树形结构 展示项目依赖

eclipse 默认视图是平铺的项目结构,在多模块下,建议修改为树形展示,如上图

移动端开发环境部署

开发前请确认机器安装有 node js

  1. 引入移动端项目 bpm-app https://gitee.com/agile-bpm/bpm-app.git
  2. 在项目目录下安装依赖 ,控制台执行node命令 npm install
  3. baseService.js文件 中配置 ctx 地址指向后台项目的服务器地址
  4. 启动热部署项目 npm run dev
  5. 如果需要部署线上则执行 npm run build 然后部署打包后的 dist 目录文件

移动端基于 VUX ,更多可以查看官网: https://vux.li/

部署至Tomcat服务器

  1. 部署前请确认 移动端 ctx 配置是否正确
  2. 确认环境与数据库连接是否正确
  3. 对web项目执行 package 命令,将 agile-bpm-platform.war 拖至 Tomcat webapps 目录
  4. 将 pc 端 bpm-explorer 拖至 webapps 目录
  5. 对移动端执行 npm build 命令然后将 dist 目录内容 拖至 webapps 目录,修改目录名为移动端 ctx:bpm-app

建议使用Jenkins构建
server 启动后对应的前端访问地址:
pc端: http://ip:port/bpm-explorer/
移动端: http://ip:port/bpm-app/

他们对应的后端 Rest 服务资源地址为 http://ip:port/agile-bpm-platform/

这里只提供一种部署方式,当然使用网关、独立部署前后端都没关系、只要保证前端项目请求到后端项目地址无误即可

开发部署中常见问题

  • jar 包下载不到
    可能是自己配置了私服,导致无法从root 目录 pom 中配置的私服下载部分jar ,如果还有问题请 对 root 目录 执行 clean install 命令做检查
  • 首页菜单不展示,不跳转登录页
    可能是:前后端项目 ctx 配置的问题。 大多是重新部署后,后端项目ctx 没有配置,导致前端请求 404。所以请打开控制台,检查前端项目url访问地址,此地址与后端部署项目是否一致。
  • 系统不支持当前域名的访问,请联系管理员
    在app-security.xml 配置文件中 对csrfFilter 的 ingores 进行域名忽略配置。
    移动端开发部署,目前是不同域名的,所以必须添加忽略。否则会出如上异常提示
  • PC前端项目修改ctx,修改公共js
    在 app-conf.js 中可以修改 ctx 地址,然后项目目录下 执行webpack 命令打包压缩js
  • 添加新的 controller 无法访问
    可以参考 demo 模块下的 readme.md 有关于 包扫描的描述,也有可能是项目 没有热部署、那就需要手动 install 相关模块 ,也请检查web模块 代码版本是否与源码一致

  • 更多 常见问题以及解答

IDEA 配置 Tomcat

一、配置 Run Configurations,添加Tomcat Server

  • 添加一个Tomcat
  • 配置Tomcat启动后打开的地址(设置为前端 ctx 对应的地址)
    如图:

二、如图 配置Deployment

  • web app 设置为 /agile-bpm-platform
  • bpm-explorer目录为前端项目,前端访问的 ctx 可以设置为 “/“
    如图配置

  • 点击启动即可

视频讲解

讲解项目模块结构,演示部署过程